[llvm-commits] [llvm] r46337 - in /llvm/trunk/lib/Target/X86: X86RegisterInfo.cpp X86RegisterInfo.h X86RegisterInfo.td

Evan Cheng evan.cheng at apple.com
Thu Jan 24 17:17:48 PST 2008


Woot. Thx a bunch. I'll look at more complicated cases.

Evan

On Jan 24, 2008, at 4:53 PM, Owen Anderson <resistor at mac.com> wrote:

> Evan, Chris,
>
> I've confirmed that basic testcases appear to be working with this  
> change.
>
> --Owen
>
> On Jan 24, 2008, at 6:34 PM, Anton Korobeynikov wrote:
>
>> Author: asl
>> Date: Thu Jan 24 18:34:13 2008
>> New Revision: 46337
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=46337&view=rev
>> Log:
>> Provide correct DWARF register numbering for debug information  
>> emission on x86-32/Darwin.
>> This should fix bunch of issues.
>>
>> Modified:
>>   llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp
>>   llvm/trunk/lib/Target/X86/X86RegisterInfo.h
>>   llvm/trunk/lib/Target/X86/X86RegisterInfo.td
>>
>> Modified: llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp?rev=46337&r1=46336&r2=46337&view=diff
>>
>> === 
>> === 
>> === 
>> =====================================================================
>> --- llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp (original)
>> +++ llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp Thu Jan 24  
>> 18:34:13 2008
>> @@ -64,12 +64,15 @@
>>  unsigned Flavour = DWARFFlavour::X86_64;
>>  if (!Subtarget->is64Bit()) {
>>    if (Subtarget->isTargetDarwin()) {
>> -      Flavour = DWARFFlavour::X86_32_Darwin;
>> +      if (isEH)
>> +        Flavour = DWARFFlavour::X86_32_DarwinEH;
>> +      else
>> +        Flavour = DWARFFlavour::X86_32_Generic;
>>    } else if (Subtarget->isTargetCygMing()) {
>>      // Unsupported by now, just quick fallback
>> -      Flavour = DWARFFlavour::X86_32_ELF;
>> +      Flavour = DWARFFlavour::X86_32_Generic;
>>    } else {
>> -      Flavour = DWARFFlavour::X86_32_ELF;
>> +      Flavour = DWARFFlavour::X86_32_Generic;
>>    }
>>  }
>>
>>
>> Modified: llvm/trunk/lib/Target/X86/X86RegisterInfo.h
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86RegisterInfo.h?rev=46337&r1=46336&r2=46337&view=diff
>>
>> === 
>> === 
>> === 
>> =====================================================================
>> --- llvm/trunk/lib/Target/X86/X86RegisterInfo.h (original)
>> +++ llvm/trunk/lib/Target/X86/X86RegisterInfo.h Thu Jan 24 18:34:13  
>> 2008
>> @@ -36,7 +36,7 @@
>> ///
>> namespace DWARFFlavour {
>>  enum {
>> -    X86_64 = 0, X86_32_Darwin = 1, X86_32_ELF = 2
>> +    X86_64 = 0, X86_32_DarwinEH = 1, X86_32_Generic = 2
>>  };
>> }
>>
>>
>> Modified: llvm/trunk/lib/Target/X86/X86RegisterInfo.td
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86RegisterInfo.td?rev=46337&r1=46336&r2=46337&view=diff
>>
>> === 
>> === 
>> === 
>> =====================================================================
>> --- llvm/trunk/lib/Target/X86/X86RegisterInfo.td (original)
>> +++ llvm/trunk/lib/Target/X86/X86RegisterInfo.td Thu Jan 24  
>> 18:34:13 2008
>> @@ -25,11 +25,8 @@
>>
>>  // Dwarf numbering is different for 32-bit and 64-bit, and there are
>>  // variations by target as well. Currently the first entry is for  
>> X86-64,
>> -  // second - for X86-32/Darwin and third for X86-32/Linux
>> -
>> -  // FIXME:  Comments in gcc indicate that Darwin uses different  
>> numbering
>> -  // for debug info and exception handling info:(  The numbering  
>> here is
>> -  // for exception handling.
>> +  // second - for EH on X86-32/Darwin and third is 'generic' one  
>> (X86-32/Linux
>> +  // and debug information on X86-32/Darwin)
>>
>>  // 8-bit registers
>>  // Low registers
>>
>>
>> _______________________________________________
>> 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