[PATCH] D12920: Add TargetCustom type to PseudoSourceValue

Pete Cooper via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 17 18:15:26 PDT 2015


I might be mis-remembering, but I thought we were trying to remove PSV’s?

Only commit I could see which remotely suggested that might be the case is r206255 where the comment contained

"Anything that needs to use either a PseudoSourceValue* and Value* is strongly encouraged to use a MachinePointerInfo instead.”

I’ve CCed Nick to see if he can remember whether there was more work to come on PSV’s or whether they are here to stay.  If they are going to be removed in future then its something to think about here before adding more code which relies on them.

Pete
> On Sep 17, 2015, at 5:51 PM, Marcello Maggioni via llvm-commits <llvm-commits at lists.llvm.org> wrote:
> 
> kariddi updated this revision to Diff 35051.
> kariddi marked an inline comment as done.
> kariddi added a comment.
> 
> Still waiting for comments about the MIR serialization stuff.
> 
> 
> http://reviews.llvm.org/D12920
> 
> Files:
>  include/llvm/CodeGen/PseudoSourceValue.h
>  lib/CodeGen/MIRPrinter.cpp
> 
> Index: lib/CodeGen/MIRPrinter.cpp
> ===================================================================
> --- lib/CodeGen/MIRPrinter.cpp
> +++ lib/CodeGen/MIRPrinter.cpp
> @@ -892,6 +892,9 @@
>       printLLVMNameWithoutPrefix(
>           OS, cast<ExternalSymbolPseudoSourceValue>(PVal)->getSymbol());
>       break;
> +    case PseudoSourceValue::TargetCustom:
> +      llvm_unreachable("TargetCustom pseudo source values are not supported");
> +      break;
>     }
>   }
>   printOffset(Op.getOffset());
> Index: include/llvm/CodeGen/PseudoSourceValue.h
> ===================================================================
> --- include/llvm/CodeGen/PseudoSourceValue.h
> +++ include/llvm/CodeGen/PseudoSourceValue.h
> @@ -40,7 +40,8 @@
>     ConstantPool,
>     FixedStack,
>     GlobalValueCallEntry,
> -    ExternalSymbolCallEntry
> +    ExternalSymbolCallEntry,
> +    TargetCustom
>   };
> 
> private:
> @@ -63,6 +64,9 @@
>   bool isGOT() const { return Kind == GOT; }
>   bool isConstantPool() const { return Kind == ConstantPool; }
>   bool isJumpTable() const { return Kind == JumpTable; }
> +  unsigned getTargetCustom() const {
> +    return (Kind >= TargetCustom) ? ((Kind+1) - TargetCustom) : 0;
> +  }
> 
>   /// Test whether the memory pointed to by this PseudoSourceValue has a
>   /// constant value.
> 
> 
> <D12920.35051.patch>_______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits



More information about the llvm-commits mailing list