[PATCH] D100085: [X86] Support -march=rocketlake

Freddy, Ye via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 8 08:45:15 PDT 2021


FreddyYe added a comment.

Hi @MaskRay , I tried to refactor the test file by assembling the common CHECKs. But I found it will lead to too many check-prefixes ine one RUN line. For example,

  // RUN: %clang -march=c3 -m32 -E -dM %s -o - 2>&1 \
  // RUN:     -target i386-unknown-linux \
  // RUN:   | FileCheck -match-full-lines %s -check-prefixes=CHECK_I386_M32C,CHECK_I486_M32C,CHECK_I486_M32S,CHECK_PENTIUM_MMX_M32S,CHECK_WINCHIP2_M32S
  
  // CHECK_WINCHIP2_M32S: #define __3dNOW__ 1
  // CHECK_PENTIUM_MMX_M32S:    #define __MMX__ 1
  // CHECK_WINCHIP_C6_M32S: #define __MMX__ 1
  // CHECK_I386_M32C:             #define __i386 1
  // CHECK_I386_M32C:             #define __i386__ 1
  // CHECK_I486_M32C:             #define __i486 1
  // CHECK_I486_M32C:             #define __i486__ 1
  // CHECK_I586_M32C:             #define __i586 1
  // CHECK_I586_M32C:             #define __i586__ 1
  // CHECK_I586_M32C:             #define __pentium 1
  // CHECK_I586_M32C:             #define __pentium__ 1
  // CHECK_PENTIUM_MMX_M32S:      #define __pentium_mmx__ 1
  // CHECK_I386_M32S:         #define __tune_i386__ 1
  // CHECK_I486_M32S:         #define __tune_i486__ 1
  // CHECK_PENTIUM_MMX_M32S:      #define __tune_pentium_mmx__ 1
  // CHECK_I386_M32C:             #define i386 1

And that CPU is still a very old CPU. It is easy to imagine how long for example skylake's RUN line is. Generally speaking, X86's ISA evolution between different chips is not very clear. So this refactoring work is beyond my ETA. I uploaded a new version to reuse the most similar CHECKS. Does that look good to you?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D100085/new/

https://reviews.llvm.org/D100085



More information about the llvm-commits mailing list