SixWeining added a comment.

> In GCC I added the numbers for "loongarch64" and "la464" although they are 
> the same, and GCC does not have "empty".  But yes we can do things later here.

Ah, I just realize `TuneCPU` is always not empty because:

  27 LoongArchSubtarget &LoongArchSubtarget::initializeSubtargetDependencies(
  28     const Triple &TT, StringRef CPU, StringRef TuneCPU, StringRef FS,
  29     StringRef ABIName) {
  30   bool Is64Bit = TT.isArch64Bit();
  31   if (CPU.empty() || CPU == "generic")
  32     CPU = Is64Bit ? "generic-la64" : "generic-la32"; // empty CPU will be 
converted to generic-la{64,32}
  33 
  34   if (TuneCPU.empty())
  35     TuneCPU = CPU; // empty TuneCPU will be converted to CPU, so TuneCPU 
is not empty when we all initializeProperties below
  36 
  37   ParseSubtargetFeatures(CPU, TuneCPU, FS);
  38   initializeProperties(TuneCPU);

So, the problem is how to set numbers for `generic-la{64,32}` ? Currenly if we 
directly use `clang hello.c`, `TuneCPU` is `generic-la64`.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D155824

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to