================
Comment at: lib/Basic/Targets.cpp:4160
@@ +4159,3 @@
+    if (Triple.getSubArch() == llvm::Triple::SubArchType::NoSubArch)
+      setArchInfo("armv6j");
+    else 
----------------
labrinea wrote:
> rengolin wrote:
> > labrinea wrote:
> > > rengolin wrote:
> > > > This seems quite arbitrary... Couldn't you return an empty string?
> > > If no subArch is specified then setArchInfo() cannot do much with an 
> > > empty string. ArcKind will be set to invalid and getCPUAttr() will return 
> > > an empty string. A regression will appear since __ARM_ARCH_6J__ won't be 
> > > defined as expected. That ("armv6j") should be the corresponding subArch 
> > > for the default CPU ("arm1136j-s") specified in the constructor.
> > Then, use the default value in the constructor (CPU) instead, to figure out 
> > the arch.
> > 
> > Don't just hard-code yet another temporarily matching value.
> If it is more maintainable instead of setArchInfo("armv6j") we could call 
> setCPU(CPU) (where cpu is "arm1136j-s" by default) in case subArch is not 
> defined.
or you could use TargetParser::parseCPUArch(CPU);

Anything bur more hardcoded values.

http://reviews.llvm.org/D10839

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/



_______________________________________________
cfe-commits mailing list
cfe-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to