Refs #332. Added addtional Intel Ivy Bridge and Haswell CPU-id.
authorZhang Xianyi <traits.zhang@gmail.com>
Sun, 5 Jan 2014 15:44:29 +0000 (23:44 +0800)
committerZhang Xianyi <traits.zhang@gmail.com>
Sun, 5 Jan 2014 15:44:29 +0000 (23:44 +0800)
cpuid_x86.c
driver/others/dynamic.c

index 4ed01b8911c760e6f7c9e92d8a5e6ab4ffcfbfc7..a991efbc27e681c11ce4590a66d345b4375da8d7 100644 (file)
@@ -1051,11 +1051,14 @@ int get_cpuname(void){
       case 3:
        switch (model) {
        case 10:
+        case 14:
+         // Ivy Bridge
          if(support_avx())
            return CPUTYPE_SANDYBRIDGE;
          else
            return CPUTYPE_NEHALEM;
         case 12:
+       case 15:
           if(support_avx())
             return CPUTYPE_HASWELL;
           else
@@ -1065,6 +1068,7 @@ int get_cpuname(void){
       case 4:
         switch (model) {
         case 5:
+       case 6:
           if(support_avx())
             return CPUTYPE_HASWELL;
           else
@@ -1457,11 +1461,13 @@ int get_coretype(void){
       case 3:
        switch (model) {
        case 10:
+       case 14:
          if(support_avx())
            return CORE_SANDYBRIDGE;
          else
            return CORE_NEHALEM; //OS doesn't support AVX
         case 12:
+       case 15:
           if(support_avx())
             return CORE_HASWELL;
           else
@@ -1471,6 +1477,7 @@ int get_coretype(void){
       case 4:
         switch (model) {
         case 5:
+       case 6:
           if(support_avx())
             return CORE_HASWELL;
           else
index d6a08eb9f6b01bb869837bd89b6b719b8b824055..52b984f096b67cc86f202a0dc6aa7e041deeeabe 100644 (file)
@@ -186,7 +186,7 @@ static gotoblas_t *get_coretype(void){
        return NULL;
       case 3:
        //Intel Sandy Bridge 22nm (Ivy Bridge?)
-       if (model == 10) {
+       if (model == 10 || model == 14) {
          if(support_avx())
            return &gotoblas_SANDYBRIDGE;
          else{
@@ -195,7 +195,7 @@ static gotoblas_t *get_coretype(void){
          }
        }
        //Intel Haswell
-       if (model == 12) {
+       if (model == 12 || model == 15) {
          if(support_avx())
            return &gotoblas_HASWELL;
          else{
@@ -206,7 +206,7 @@ static gotoblas_t *get_coretype(void){
        return NULL;
       case 4:
                //Intel Haswell
-       if (model == 5) {
+       if (model == 5 || model == 6) {
          if(support_avx())
            return &gotoblas_HASWELL;
          else{