From: Petar Jovanovic Date: Sun, 15 Sep 2013 22:49:01 +0000 (+0000) Subject: mips32/mips64: rename mips32_features to mips_features X-Git-Tag: svn/VALGRIND_3_9_0~140 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=567ed9419a6fe8a3a45c0ae354e8c91f00a03399;p=thirdparty%2Fvalgrind.git mips32/mips64: rename mips32_features to mips_features As this file is now detecting mips64/Cavium boards, we are renaming it to reflect that. The functional change is that mips_features now can detect Cavium board and allow Cavium-specific tests to be run. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13551 --- diff --git a/none/tests/mips32/mips32_dsp.vgtest b/none/tests/mips32/mips32_dsp.vgtest index a5f3d07c03..260e704d6b 100644 --- a/none/tests/mips32/mips32_dsp.vgtest +++ b/none/tests/mips32/mips32_dsp.vgtest @@ -1,3 +1,3 @@ prog: mips32_dsp -prereq: ../../../tests/mips32_features mips32-dsp +prereq: ../../../tests/mips_features mips32-dsp vgopts: -q diff --git a/none/tests/mips32/mips32_dspr2.vgtest b/none/tests/mips32/mips32_dspr2.vgtest index 1ebc39b9cd..2dd90b413d 100644 --- a/none/tests/mips32/mips32_dspr2.vgtest +++ b/none/tests/mips32/mips32_dspr2.vgtest @@ -1,3 +1,3 @@ prog: mips32_dspr2 -prereq: ../../../tests/mips32_features mips32-dspr2 +prereq: ../../../tests/mips_features mips32-dspr2 vgopts: -q diff --git a/tests/Makefile.am b/tests/Makefile.am index 249111cd62..0303a61759 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -26,7 +26,7 @@ check_PROGRAMS = \ true \ x86_amd64_features \ s390x_features \ - mips32_features + mips_features AM_CFLAGS += $(AM_FLAG_M3264_PRI) AM_CXXFLAGS += $(AM_FLAG_M3264_PRI) diff --git a/tests/mips32_features.c b/tests/mips_features.c similarity index 79% rename from tests/mips32_features.c rename to tests/mips_features.c index 191f2601de..559cd69974 100644 --- a/tests/mips32_features.c +++ b/tests/mips_features.c @@ -1,10 +1,10 @@ -// This file determines MIPS32 features a processor supports. +// This file determines MIPS features a processor supports. // // We return: // - 0 if the machine matches the asked-for feature. // - 1 if the machine does not. // - 2 if the asked-for feature isn't recognised (this will be the case for -// any feature if run on a non-MIPS32 machine). +// any feature if run on a non-MIPS machine). // - 3 if there was a usage error (it also prints an error message). #include #include @@ -16,7 +16,7 @@ #define UNRECOGNISED_FEATURE 2 #define USAGE_ERROR 3 -#if defined(VGA_mips32) +#if defined(VGA_mips32) || defined(VGA_mips64) static int mipsCPUInfo(const char *search_string) { const char *file_name = "/proc/cpuinfo"; /* Simple detection of MIPS DSP ASE at runtime for Linux. @@ -63,6 +63,14 @@ static int go(char *feature) } else{ return FEATURE_NOT_PRESENT; } + } else if ((strcmp(feature, "cavium-octeon") == 0)) { + const char *cavium = "Cavium Octeon"; + cpuinfo = mipsCPUInfo(cavium); + if (cpuinfo == 1) { + return FEATURE_PRESENT; + } else{ + return FEATURE_NOT_PRESENT; + } } else { return UNRECOGNISED_FEATURE; } @@ -73,7 +81,7 @@ static int go(char *feature) static int go(char *feature) { - /* Feature is not recognised. (non-MIPS32 machine!) */ + /* Feature is not recognised. (non-MIPS machine!) */ return UNRECOGNISED_FEATURE; } @@ -86,7 +94,7 @@ static int go(char *feature) int main(int argc, char **argv) { if (argc != 2) { - fprintf( stderr, "usage: mips32_features \n" ); + fprintf( stderr, "usage: mips_features \n" ); exit(USAGE_ERROR); } return go(argv[1]);