[PATCH] D86621: [clang][Sparc] Default to -mcpu=v9 for SparcV8 on Solaris

Brad Smith via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Sep 1 13:01:18 PDT 2020


brad added inline comments.


================
Comment at: clang/lib/Driver/ToolChains/CommonArgs.cpp:350
       return A->getValue();
+    if (T.getArch() == llvm::Triple::sparc && T.isOSSolaris())
+      return "v9";
----------------
ro wrote:
> efriedma wrote:
> > Do we want to make sparc and sparcel behave differently here?
> The only thing about little-endian SPARC is that UltraSPARC CPUs can be run in little-endian  mode, presumably to ease a Windows NT port that never materialized.
> 
> I could barely find any info on sparcel: the triplet isn't in `config.guess`, there's very little else about such CPUs and certainly no specification or even an ABI. That's why I tend to leave sparcel-specific code alone unless someone who knows these beasts tells me otherwise.
> 
> What I can say for certain that Solaris never ran on little-endian SPARC.
"The Sparcle is an experimental 32-bit microprocessor chip developed in 1992 by a consortium of MIT, LSI Corporation, and Sun Microsystems. It was an evolution Sun's SPARC RISC architecture with features geared towards "large-scale multiprocessing".[1] The chip was manufactured by LSI."

https://people.eecs.berkeley.edu/~kubitron/cs252/handouts/papers/sparcle-micro-final.pdf

>From what little I can find I believe this prototype CPU / system was based on Linux.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D86621



More information about the cfe-commits mailing list