diff options
author | Tom Stellard <[email protected]> | 2012-08-29 09:58:28 -0400 |
---|---|---|
committer | Tom Stellard <[email protected]> | 2012-08-29 15:52:10 -0400 |
commit | cf4ac69928eb17685958e6b3b01b97544560d90e (patch) | |
tree | 53e8f08191ca6b371fa46665b1582d9515aaf390 /src/gallium/drivers/radeon | |
parent | 73a2c4b9db638cad83e412097ed3433649aab47b (diff) |
radeon/llvm: Declare the interpolation intrinsics as ReadOnly
This signals to the Dead Code Elimination pass that it is safe to
remove these instructions when they are dead.
Diffstat (limited to 'src/gallium/drivers/radeon')
-rw-r--r-- | src/gallium/drivers/radeon/SIInstrInfo.td | 1 | ||||
-rw-r--r-- | src/gallium/drivers/radeon/SIIntrinsics.td | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/radeon/SIInstrInfo.td b/src/gallium/drivers/radeon/SIInstrInfo.td index 81df55d135e..55882808659 100644 --- a/src/gallium/drivers/radeon/SIInstrInfo.td +++ b/src/gallium/drivers/radeon/SIInstrInfo.td @@ -364,6 +364,7 @@ class VINTRP <bits <2> op, dag outs, dag ins, string asm, list<dag> pattern> : let EncodingType = 11; // SIInstrEncodingType::VINTRP let Uses = [M0]; + let neverHasSideEffects = 1; } class VOP1 <bits<8> op, dag outs, dag ins, string asm, list<dag> pattern> : diff --git a/src/gallium/drivers/radeon/SIIntrinsics.td b/src/gallium/drivers/radeon/SIIntrinsics.td index b9544f10687..401325bf5b1 100644 --- a/src/gallium/drivers/radeon/SIIntrinsics.td +++ b/src/gallium/drivers/radeon/SIIntrinsics.td @@ -26,7 +26,7 @@ let TargetPrefix = "SI", isTarget = 1 in { /* Interpolation Intrinsics */ def int_SI_set_M0 : Intrinsic <[llvm_i32_ty], [llvm_i32_ty]>; - class Interp : Intrinsic <[llvm_float_ty], [llvm_i32_ty, llvm_i32_ty, llvm_i32_ty], []>; + class Interp : Intrinsic <[llvm_float_ty], [llvm_i32_ty, llvm_i32_ty, llvm_i32_ty], [IntrReadMem]>; def int_SI_fs_interp_linear_center : Interp; def int_SI_fs_interp_linear_centroid : Interp; |