[llvm-commits] [llvm] r47143 - in /llvm/trunk: lib/Target/CellSPU/SPUSubtarget.h lib/Target/PowerPC/PPCAsmPrinter.cpp lib/Target/PowerPC/PPCSubtarget.cpp lib/Target/PowerPC/PPCSubtarget.h utils/TableGen/SubtargetEmitter.cpp
Dale Johannesen
dalej at apple.com
Thu Feb 14 17:23:07 PST 2008
On Feb 14, 2008, at 3:40 PM, Evan Cheng wrote:
> Thanks. Since you are hacking on this, can you check something for me?
> I seem to be getting this annoying warning (something like "generating
> 64-bit code for 32-bit cpu") when I do (for example) -march=x86-64 -
> mattr=-sse41. Any idea what's causing this bogus warning? Is it when -
> mattr is used, it does not do auto CPU feature detection?
>
> Evan
It's simpler than that, the "core2" table entry didn't say it has 64-
bit support. Fixed.
This warning (PPC has it too) also comes out for cross compiles, which
I suppose is accurate, but doesn't seem helpful. Anybody for getting
rid of it?
> On Feb 14, 2008, at 3:35 PM, Dale Johannesen wrote:
>
>> Author: johannes
>> Date: Thu Feb 14 17:35:16 2008
>> New Revision: 47143
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=47143&view=rev
>> Log:
>> Rewrite tblgen handling of subtarget features so
>> it follows the order of the enum, not alphabetical.
>> The motivation is to make -mattr=+ssse3,+sse41
>> select SSE41 as it ought to. Added "ignored"
>> enum values of 0 to PPC and SPU to avoid compiler
>> warnings.
>>
>>
>> Modified:
>> llvm/trunk/lib/Target/CellSPU/SPUSubtarget.h
>> llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cpp
>> llvm/trunk/lib/Target/PowerPC/PPCSubtarget.cpp
>> llvm/trunk/lib/Target/PowerPC/PPCSubtarget.h
>> llvm/trunk/utils/TableGen/SubtargetEmitter.cpp
>>
>> Modified: llvm/trunk/lib/Target/CellSPU/SPUSubtarget.h
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CellSPU/SPUSubtarget.h?rev=47143&r1=47142&r2=47143&view=diff
>>
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =====================================================================
>> --- llvm/trunk/lib/Target/CellSPU/SPUSubtarget.h (original)
>> +++ llvm/trunk/lib/Target/CellSPU/SPUSubtarget.h Thu Feb 14 17:35:16
>> 2008
>> @@ -26,6 +26,7 @@
>>
>> namespace SPU {
>> enum {
>> + PROC_NONE,
>> DEFAULT_PROC
>> };
>> }
>>
>> Modified: llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cpp?rev=47143&r1=47142&r2=47143&view=diff
>>
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =====================================================================
>> --- llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cpp (original)
>> +++ llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cpp Thu Feb 14
>> 17:35:16 2008
>> @@ -849,6 +849,7 @@
>>
>> bool DarwinAsmPrinter::doInitialization(Module &M) {
>> static const char *CPUDirectives[] = {
>> + "",
>> "ppc",
>> "ppc601",
>> "ppc602",
>>
>> Modified: llvm/trunk/lib/Target/PowerPC/PPCSubtarget.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/PPCSubtarget.cpp?rev=47143&r1=47142&r2=47143&view=diff
>>
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =====================================================================
>> --- llvm/trunk/lib/Target/PowerPC/PPCSubtarget.cpp (original)
>> +++ llvm/trunk/lib/Target/PowerPC/PPCSubtarget.cpp Thu Feb 14
>> 17:35:16 2008
>> @@ -60,6 +60,7 @@
>> const std::string &FS, bool is64Bit)
>> : TM(tm)
>> , StackAlignment(16)
>> + , DarwinDirective(PPC::DIR_NONE)
>> , IsGigaProcessor(false)
>> , Has64BitSupport(false)
>> , Use64BitRegs(false)
>>
>> Modified: llvm/trunk/lib/Target/PowerPC/PPCSubtarget.h
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/PPCSubtarget.h?rev=47143&r1=47142&r2=47143&view=diff
>>
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =====================================================================
>> --- llvm/trunk/lib/Target/PowerPC/PPCSubtarget.h (original)
>> +++ llvm/trunk/lib/Target/PowerPC/PPCSubtarget.h Thu Feb 14 17:35:16
>> 2008
>> @@ -27,6 +27,7 @@
>> namespace PPC {
>> // -m directive values.
>> enum {
>> + DIR_NONE,
>> DIR_32,
>> DIR_601,
>> DIR_602,
>>
>> Modified: llvm/trunk/utils/TableGen/SubtargetEmitter.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/SubtargetEmitter.cpp?rev=47143&r1=47142&r2=47143&view=diff
>>
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =====================================================================
>> --- llvm/trunk/utils/TableGen/SubtargetEmitter.cpp (original)
>> +++ llvm/trunk/utils/TableGen/SubtargetEmitter.cpp Thu Feb 14
>> 17:35:16 2008
>> @@ -482,8 +482,12 @@
>> const std::string &Value = R->getValueAsString("Value");
>> const std::string &Attribute = R->getValueAsString("Attribute");
>>
>> - OS << " if ((Bits & " << Instance << ") != 0) "
>> - << Attribute << " = " << Value << ";\n";
>> + if (Value=="true" || Value=="false")
>> + OS << " if ((Bits & " << Instance << ") != 0) "
>> + << Attribute << " = " << Value << ";\n";
>> + else
>> + OS << " if ((Bits & " << Instance << ") != 0 && " <<
>> Attribute <<
>> + " < " << Value << ") " << Attribute << " = " << Value
>> << ";\n";
>> }
>>
>> if (HasItineraries) {
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list