From 391f6af7ab7eb463485dad3c0a3a895243e86694 Mon Sep 17 00:00:00 2001 From: Thom Johansen Date: Tue, 15 Nov 2005 16:56:20 +0000 Subject: Shave off an instruction by use of conditionals. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7896 a1c6a512-1295-4272-9138-f99709370657 --- firmware/thread.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'firmware/thread.c') diff --git a/firmware/thread.c b/firmware/thread.c index 9a2dbd3033..5cd4dbeaf0 100644 --- a/firmware/thread.c +++ b/firmware/thread.c @@ -102,10 +102,8 @@ static inline void load_context(const void* addr) "ldr r0, [%0, #44] \n" /* load start pointer */ "mov r1, #0 \n" "cmp r0, r1 \n" /* check for NULL */ - "beq .running \n" /* if it's NULL, we're already running */ - "str r1, [%0, #44] \n" - "mov pc, r0 \n" /* not already running, so jump to start */ - ".running: \n" + "strne r1, [%0, #44] \n" /* if it's NULL, we're already running */ + "movne pc, r0 \n" /* not already running, so jump to start */ : : "r" (addr) : "r0", "r1" ); } -- cgit v1.2.3