[llvm-commits] [llvm] r115876 - /llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp

Michael Spencer bigcheesegs at gmail.com
Thu Oct 7 11:42:10 PDT 2010


On Wed, Oct 6, 2010 at 7:56 PM, Jakob Stoklund Olesen <stoklund at 2pi.dk> wrote:
> Author: stoklund
> Date: Wed Oct  6 18:56:46 2010
> New Revision: 115876
>
> URL: http://llvm.org/viewvc/llvm-project?rev=115876&view=rev
> Log:
> Properly handle GR32_NOSP in X86RegisterInfo::getMatchingSuperRegClass.
>
> This function looks like it is about ready to be generated by TebleGen.
>
> Modified:
>    llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp
>
> Modified: llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp?rev=115876&r1=115875&r2=115876&view=diff
> ==============================================================================
> --- llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp (original)
> +++ llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp Wed Oct  6 18:56:46 2010
> @@ -270,9 +270,14 @@
>     }
>     break;
>   case X86::sub_32bit:
> -    if (B == &X86::GR32RegClass || B == &X86::GR32_NOSPRegClass) {
> +    if (B == &X86::GR32RegClass) {
>       if (A->getSize() == 8)
>         return A;
> +    } else if (B == &X86::GR32_NOSPRegClass) {
> +      if (A == &X86::GR64RegClass || &X86::GR64_NOSPRegClass)

Missing a comparison operator. An address is always true.

- Michael Spencer

> +        return &X86::GR64_NOSPRegClass;
> +      if (A->getSize() == 8)
> +        return getCommonSubClass(A, &X86::GR64_NOSPRegClass);
>     } else if (B == &X86::GR32_ABCDRegClass) {
>       if (A == &X86::GR64RegClass || A == &X86::GR64_ABCDRegClass ||
>           A == &X86::GR64_NOREXRegClass ||
>
>
> _______________________________________________
> 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