Re: [PATCH] drm/i915: Drop platform_mask

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 15/03/2019 06:56, Tvrtko Ursulin wrote:

On 15/03/2019 00:52, Chris Wilson wrote:
Quoting José Roberto de Souza (2019-03-15 00:42:35)
We don't have any platform that is composed by 2 or more platforms so
we don't need a mask, lets drop it and remove the actual limit of 32
platforms.

Platform mask was a nifty trick to compile tests like IS_SKYLAKE || IS_BROADWELL etc into a single conditional.

gcc doesn't entirely agree, this is a net loss here (i.e. code size
increases).

Perhaps the size re-gain of dropping the platform mask could be checked against the size gain of making the mask 64 bit.

One possible alternative could be splitting the 64-bit platform mask into two 32-bit dwords. Like:

  u32 platform_mask[2];

  #define IS_PLATFORM(p) (platform_mask[p / 32] & BIT(p % 32))

And a bit of jigging the enum space so that we don't end up with something often tested together on the dword boundary.

In fact I had a prototype many months ago which went a step further and interleaved platform with gen mask, in some sized chunks, so even IS_PLATFORM || IS_GEN checks could be merged. This included the sub-platform thing as well with the ULT/ULX/LP stuff I think.. maybe I need to dig this out to see how it worked.

Regards,

Tvrtko
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux