Blue Swirl 427a66c3a5 tcx: avoid structure holes spotted by pahole
Report from pahole on amd64 host:
struct TCXState {
	SysBusDevice               busdev;               /*     0  5648 */
	/* --- cacheline 88 boundary (5632 bytes) was 16 bytes ago --- */
	target_phys_addr_t         addr;                 /*  5648     8 */
	DisplayState *             ds;                   /*  5656     8 */
	uint8_t *                  vram;                 /*  5664     8 */
	uint32_t *                 vram24;               /*  5672     8 */
	uint32_t *                 cplane;               /*  5680     8 */
	ram_addr_t                 vram_offset;          /*  5688     8 */
	/* --- cacheline 89 boundary (5696 bytes) --- */
	ram_addr_t                 vram24_offset;        /*  5696     8 */
	ram_addr_t                 cplane_offset;        /*  5704     8 */
	uint32_t                   vram_size;            /*  5712     4 */
	uint16_t                   width;                /*  5716     2 */
	uint16_t                   height;               /*  5718     2 */
	uint16_t                   depth;                /*  5720     2 */
	uint8_t                    r[256];               /*  5722   256 */
	/* --- cacheline 93 boundary (5952 bytes) was 26 bytes ago --- */
	uint8_t                    g[256];               /*  5978   256 */
	/* --- cacheline 97 boundary (6208 bytes) was 26 bytes ago --- */
	uint8_t                    b[256];               /*  6234   256 */

	/* XXX 2 bytes hole, try to pack */

	/* --- cacheline 101 boundary (6464 bytes) was 28 bytes ago --- */
	uint32_t                   palette[256];         /*  6492  1024 */
	/* --- cacheline 117 boundary (7488 bytes) was 28 bytes ago --- */
	uint8_t                    dac_index;            /*  7516     1 */
	uint8_t                    dac_state;            /*  7517     1 */

	/* size: 7520, cachelines: 118 */
	/* sum members: 7516, holes: 1, sum holes: 2 */
	/* padding: 2 */
	/* last cacheline: 32 bytes */
};	/* definitions: 1 */

Fix by rearranging the structure to avoid padding.

Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2011-08-21 19:52:33 +00:00
2011-08-12 08:31:30 -05:00
2011-08-21 08:37:10 -05:00
2011-06-20 15:13:34 -03:00
2011-08-10 17:34:13 +02:00
2011-08-10 17:34:13 +02:00
2011-04-08 13:03:34 -06:00
…
…
…
…
…
2011-05-08 10:09:59 +02:00
…
2011-08-02 15:53:40 +02:00
2011-08-02 15:53:40 +02:00
…
2010-11-01 00:54:06 +03:00
2011-06-20 17:08:57 +01:00
2011-07-21 16:48:13 -03:00
…
…
2011-08-12 13:07:58 +01:00
2011-03-16 17:11:07 -03:00
2011-06-26 18:25:35 +00:00
2011-08-04 15:51:22 +02:00
2011-07-30 09:41:14 +00:00
…
2011-06-07 13:52:10 -05:00
2011-01-20 20:54:21 +00:00
…
…
…
2010-05-22 08:02:12 +00:00
…
2010-11-21 09:16:57 -06:00
2011-08-04 15:51:22 +02:00
2011-08-04 15:51:22 +02:00
2011-06-14 03:08:57 +02:00
…
…
2011-08-05 10:57:34 -05:00
2011-08-21 08:37:10 -05:00
2011-08-20 23:01:08 -05:00
2011-08-20 23:01:08 -05:00
…
2011-07-21 16:48:13 -03:00
2010-12-09 14:23:24 +01:00
2011-07-25 14:38:56 +00:00
2011-08-21 15:33:33 +00:00
2011-08-21 15:33:22 +00:00
2011-02-09 10:33:54 +02:00
…
…
…
…
2010-07-01 14:27:13 -03:00
2011-08-20 23:01:08 -05:00
2010-09-21 18:36:42 +02:00
2011-08-02 15:53:40 +02:00
2011-08-02 15:53:40 +02:00
2011-08-05 10:57:35 -05:00
2010-05-19 12:45:54 -03:00
2011-01-09 20:59:53 +00:00
2011-03-13 14:44:22 +00:00
…
…
2010-05-19 12:45:54 -03:00
2010-10-01 10:12:43 -03:00
2011-07-21 16:48:13 -03:00
2010-05-19 12:45:54 -03:00
2010-05-19 12:45:54 -03:00
2010-09-18 05:53:14 +00:00
…
…
2011-07-23 11:26:12 -05:00
…
2011-07-29 08:25:44 -05:00
…
…
…
2011-07-23 11:57:53 -05:00
…
…

Read the documentation in qemu-doc.html.

Fabrice Bellard.
S
Description
Original Xbox Emulator for Windows, macOS, and Linux (Active Development)
Readme GPL-2.0
715 MiB
0 Stars 1 Watchers 0 Forks
Languages
C 82.3%
C++ 6.9%
Python 3.5%
Dylan 2.7%
Shell 1.5%
Other 2.9%