Commit 44d65ea1 authored by Paolo Bonzini's avatar Paolo Bonzini Committed by Michael S. Tsirkin

ringtest: use link-time optimization

By using -flto and -fwhole-program, all functions from the ring implementation
can be treated as static and possibly inlined.  Force this to happen through
the GCC flatten attribute.
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
parent 8424af53
......@@ -3,8 +3,8 @@ all:
all: ring virtio_ring_0_9 virtio_ring_poll virtio_ring_inorder ptr_ring noring
CFLAGS += -Wall
CFLAGS += -pthread -O2 -ggdb
LDFLAGS += -pthread -O2 -ggdb
CFLAGS += -pthread -O2 -ggdb -flto -fwhole-program
LDFLAGS += -pthread -O2 -ggdb -flto -fwhole-program
main.o: main.c main.h
ring.o: ring.c main.h
......
......@@ -96,7 +96,7 @@ void set_affinity(const char *arg)
assert(!ret);
}
static void run_guest(void)
static void __attribute__((__flatten__)) run_guest(void)
{
int completed_before;
int completed = 0;
......@@ -149,7 +149,7 @@ static void run_guest(void)
}
}
static void run_host(void)
static void __attribute__((__flatten__)) run_host(void)
{
int completed_before;
int completed = 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment