Author: ctopper Date: Thu Oct 26 16:06:19 2017 New Revision: 316712 URL: http://llvm.org/viewvc/llvm-project?rev=316712&view=rev Log: [X86] Make -march=i686 an alias of -march=pentiumpro
I think the only reason they are different is because we don't set tune_i686 for -march=i686 to match GCC. But GCC 4.9.0 seems to have changed this behavior and they do set it now. So I think they can aliases now. Differential Revision: https://reviews.llvm.org/D39349 Modified: cfe/trunk/lib/Basic/Targets/X86.cpp cfe/trunk/lib/Basic/Targets/X86.h cfe/trunk/test/Preprocessor/predefined-arch-macros.c Modified: cfe/trunk/lib/Basic/Targets/X86.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/Targets/X86.cpp?rev=316712&r1=316711&r2=316712&view=diff ============================================================================== --- cfe/trunk/lib/Basic/Targets/X86.cpp (original) +++ cfe/trunk/lib/Basic/Targets/X86.cpp Thu Oct 26 16:06:19 2017 @@ -119,7 +119,6 @@ bool X86TargetInfo::initFeatureMap( case CK_i486: case CK_i586: case CK_Pentium: - case CK_i686: case CK_PentiumPro: case CK_Lakemont: break; @@ -806,15 +805,8 @@ void X86TargetInfo::getTargetDefines(con Builder.defineMacro("__tune_pentium2__"); LLVM_FALLTHROUGH; case CK_PentiumPro: - Builder.defineMacro("__tune_i686__"); - Builder.defineMacro("__tune_pentiumpro__"); - LLVM_FALLTHROUGH; - case CK_i686: - Builder.defineMacro("__i686"); - Builder.defineMacro("__i686__"); - // Strangely, __tune_i686__ isn't defined by GCC when CPU == i686. - Builder.defineMacro("__pentiumpro"); - Builder.defineMacro("__pentiumpro__"); + defineCPUMacros(Builder, "i686"); + defineCPUMacros(Builder, "pentiumpro"); break; case CK_Pentium4: defineCPUMacros(Builder, "pentium4"); @@ -1542,7 +1534,6 @@ bool X86TargetInfo::checkCPUKind(CPUKind case CK_i586: case CK_Pentium: case CK_PentiumMMX: - case CK_i686: case CK_PentiumPro: case CK_Pentium2: case CK_Pentium3: @@ -1606,8 +1597,7 @@ X86TargetInfo::CPUKind X86TargetInfo::ge .Case("i586", CK_i586) .Case("pentium", CK_Pentium) .Case("pentium-mmx", CK_PentiumMMX) - .Case("i686", CK_i686) - .Case("pentiumpro", CK_PentiumPro) + .Cases("i686", "pentiumpro", CK_PentiumPro) .Case("pentium2", CK_Pentium2) .Cases("pentium3", "pentium3m", CK_Pentium3) .Case("pentium-m", CK_PentiumM) Modified: cfe/trunk/lib/Basic/Targets/X86.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/Targets/X86.h?rev=316712&r1=316711&r2=316712&view=diff ============================================================================== --- cfe/trunk/lib/Basic/Targets/X86.h (original) +++ cfe/trunk/lib/Basic/Targets/X86.h Thu Oct 26 16:06:19 2017 @@ -122,7 +122,6 @@ class LLVM_LIBRARY_VISIBILITY X86TargetI /// \name i686 /// i686-generation processors, P6 / Pentium M microarchitecture based. //@{ - CK_i686, CK_PentiumPro, CK_Pentium2, CK_Pentium3, Modified: cfe/trunk/test/Preprocessor/predefined-arch-macros.c URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Preprocessor/predefined-arch-macros.c?rev=316712&r1=316711&r2=316712&view=diff ============================================================================== --- cfe/trunk/test/Preprocessor/predefined-arch-macros.c (original) +++ cfe/trunk/test/Preprocessor/predefined-arch-macros.c Thu Oct 26 16:06:19 2017 @@ -156,6 +156,8 @@ // CHECK_I686_M32: #define __i686__ 1 // CHECK_I686_M32: #define __pentiumpro 1 // CHECK_I686_M32: #define __pentiumpro__ 1 +// CHECK_I686_M32: #define __tune_i686__ 1 +// CHECK_I686_M32: #define __tune_pentiumpro__ 1 // CHECK_I686_M32: #define i386 1 // RUN: not %clang -march=i686 -m64 -E -dM %s -o - 2>&1 \ // RUN: -target i386-unknown-linux \ _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits