[llvm-commits] [llvm] r157650 - in /llvm/trunk: include/llvm/MC/MCRegisterInfo.h utils/TableGen/CodeGenRegisters.cpp utils/TableGen/CodeGenRegisters.h utils/TableGen/RegisterInfoEmitter.cpp

Jakob Stoklund Olesen stoklund at 2pi.dk
Wed May 30 12:18:16 PDT 2012


On May 30, 2012, at 12:07 PM, Douglas Gregor <dgregor at apple.com> wrote:

> 
> On May 29, 2012, at 4:40 PM, Jakob Stoklund Olesen <stoklund at 2pi.dk> wrote:
>> Modified: llvm/trunk/utils/TableGen/RegisterInfoEmitter.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/RegisterInfoEmitter.cpp?rev=157650&r1=157649&r2=157650&view=diff
>> ==============================================================================
>> --- llvm/trunk/utils/TableGen/RegisterInfoEmitter.cpp (original)
>> +++ llvm/trunk/utils/TableGen/RegisterInfoEmitter.cpp Tue May 29 18:40:00 2012
>> 
>> +static void printDiff16(raw_ostream &OS, uint16_t Val) {
>> +  OS << SignExtend32<16>(Val);
>> +}
>> +
> 
> This prints a signed value, which can be negative...
> 
>> +  // Emit the shared table of differential lists.
>> +  OS << "extern const uint16_t " << TargetName << "RegDiffLists[] = {\n";
>> +  DiffSeqs.emit(OS, printDiff16);
>> +  OS << "};\n\n";
> 
> While this array is of unsigned values. 
> 
> Which one do you want? The different breaks compilation of LLVM under C++11 mode, due to -Wc++11-narrowing.

Ugh. I want mod 2^16 arithmetic. I guess I can settle for unsigned numbers.

I'll fix it.

/jakob



More information about the llvm-commits mailing list