[PATCH] drm: sti: remove redundant sign extensions

Vincent ABRIOU vincent.abriou at st.com
Thu Oct 29 09:10:33 PDT 2015


Hi Rasmus,

Thanks for the patch.
I will integrated it in the next pull request for the sti driver.

BR
Vincent

On 10/16/2015 03:14 PM, Rasmus Villemoes wrote:
> arg is long int, so arg = (arg << 22) >> 22 makes the upper 22 bits of
> arg equal to bit 9 (or bit 41). But we then mask away all but bits 0-9, so
> this is entirely redundant.
>
> Signed-off-by: Rasmus Villemoes <linux at rasmusvillemoes.dk>
> ---
> gcc seems to be smart enough to realize this - the generated code is
> the same. This is thus just a tiny cleanup.
>
>   drivers/gpu/drm/sti/sti_awg_utils.c | 4 ----
>   1 file changed, 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/sti/sti_awg_utils.c b/drivers/gpu/drm/sti/sti_awg_utils.c
> index 6029a2e3db1d..00d0698be9d3 100644
> --- a/drivers/gpu/drm/sti/sti_awg_utils.c
> +++ b/drivers/gpu/drm/sti/sti_awg_utils.c
> @@ -65,7 +65,6 @@ static int awg_generate_instr(enum opcode opcode,
>
>   			mux = 0;
>   			data_enable = 0;
> -			arg = (arg << 22) >> 22;
>   			arg &= (0x3ff);
>   			break;
>   		case REPEAT:
> @@ -77,14 +76,12 @@ static int awg_generate_instr(enum opcode opcode,
>
>   			mux = 0;
>   			data_enable = 0;
> -			arg = (arg << 22) >> 22;
>   			arg &= (0x3ff);
>   			break;
>   		case JUMP:
>   			mux = 0;
>   			data_enable = 0;
>   			arg |= 0x40; /* for jump instruction 7th bit is 1 */
> -			arg = (arg << 22) >> 22;
>   			arg &= 0x3ff;
>   			break;
>   		case STOP:
> @@ -94,7 +91,6 @@ static int awg_generate_instr(enum opcode opcode,
>   		case RPTSET:
>   		case RPLSET:
>   		case HOLD:
> -			arg = (arg << 24) >> 24;
>   			arg &= (0x0ff);
>   			break;
>   		default:
>


More information about the dri-devel mailing list