qemu-e2k/hw/audio
Philippe Mathieu-Daudé a9d8ba2be5 hw/audio/intel-hda: Use memory region alias to reduce .rodata by 4.34MB
The intel-hda model uses an array of register indexed by the
register address. This array also contains a pair of aliased
registers at offset 0x2000. This creates a huge hole in the
array, which ends up eating 4.6MiB of .rodata (size reported
on x86_64 host, building with --extra-cflags=-Os).

By using a memory region alias, we reduce this array to 132kB.

Before:

  (qemu) info mtree
    00000000febd4000-00000000febd7fff (prio 1, i/o): intel-hda

After:

  (qemu) info mtree
    00000000febd4000-00000000febd7fff (prio 1, i/o): intel-hda
    00000000febd4000-00000000febd7fff (prio 1, i/o): intel-hda-container
      00000000febd4000-00000000febd5fff (prio 0, i/o): intel-hda
      00000000febd6000-00000000febd7fff (prio 0, i/o): alias intel-hda-alias @intel-hda 0000000000000000-0000000000001fff

Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-03-16 23:02:25 +01:00
..
ac97.c qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
adlib.c qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
cs4231.c qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
cs4231a.c qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
es1370.c qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
fmopl.c hw/audio/fmopl: Move ENV_CURVE to .heap to save 32KiB of .bss 2020-03-16 23:02:24 +01:00
fmopl.h
gus.c qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
gusemu_hal.c
gusemu_mixer.c
gusemu.h
gustate.h
hda-codec-common.h
hda-codec.c qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
intel-hda-defs.h
intel-hda.c hw/audio/intel-hda: Use memory region alias to reduce .rodata by 4.34MB 2020-03-16 23:02:25 +01:00
intel-hda.h Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
Kconfig
lm4549.c Include migration/vmstate.h less 2019-08-16 13:31:52 +02:00
lm4549.h Include exec/memory.h slightly less 2019-08-16 13:31:52 +02:00
Makefile.objs
marvell_88w8618.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
milkymist-ac97.c qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
pcspk.c qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
pl041.c qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
pl041.h
pl041.hx
sb16.c qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00
soundhw.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
trace-events
wm8750.c qdev: set properties with device_class_set_props() 2020-01-24 20:59:15 +01:00