Currently, combining '-mxl-multiply-high' with -mcpu=v11.0 produces the
following bogus warning:

  echo "int main(){}" | ./microblazeel-linux-gnu-gcc -mxl-multiply-high \
  -mno-xl-soft-mul -mcpu=v11.0 -nostdlib -x c -
  warning: '-mxl-multiply-high' can be used only with '-mcpu=v6.00.a' or greater

Since strcasecmp() doesn't properly compare single-digit cpu versions with
double-digit versions, switch MICROBLAZE_VERSION_COMPARE() to use strverscmp()
instead.

        * config/microblaze/microblaze.cc (MICROBLAZE_VERSION_COMPARE): Use
        strverscmp() to fix bogus warnings when passing multi-digit -mcpu
        versions on the command line.

Signed-off-by: Ovidiu Panait <ovpan...@gmail.com>
---
 gcc/config/microblaze/microblaze.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/config/microblaze/microblaze.cc 
b/gcc/config/microblaze/microblaze.cc
index 8fcca1829f6..28a2a9596d1 100644
--- a/gcc/config/microblaze/microblaze.cc
+++ b/gcc/config/microblaze/microblaze.cc
@@ -56,7 +56,7 @@
 /* This file should be included last.  */
 #include "target-def.h"
 
-#define MICROBLAZE_VERSION_COMPARE(VA,VB) strcasecmp (VA, VB)
+#define MICROBLAZE_VERSION_COMPARE(VA,VB) strverscmp (VA, VB)
 
 /* Classifies an address.
 
-- 
2.25.1

Reply via email to