mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-10-13 10:07:38 -04:00
arm: enable unified assembly syntax in more files
This makes these files compileable, or in some cases less broken, on Cortex-M targets. In lcd-16bit.c, newer versions of GAS complain about the infix condition codes so we use the suffix form instead, which requires unified syntax to compile on GCC 4.9. Change-Id: If45166d3fc83d64c692cbb331096a966397aa9e9
This commit is contained in:
parent
639b587fc7
commit
a0bfcd77c8
12 changed files with 16 additions and 2 deletions
|
@ -32,6 +32,7 @@
|
|||
* 31 - bit 31 is set
|
||||
* 32 - no bits set
|
||||
****************************************************************************/
|
||||
.syntax unified
|
||||
.align 2
|
||||
.global find_first_set_bit
|
||||
.type find_first_set_bit,%function
|
||||
|
|
|
@ -189,6 +189,7 @@ void ICODE_ATTR lcd_bitmap_transparent_part(const fb_data *src, int src_x,
|
|||
{
|
||||
int w, px;
|
||||
asm volatile (
|
||||
BEGIN_ARM_ASM_SYNTAX_UNIFIED
|
||||
".rowstart: \n"
|
||||
"mov %[w], %[width] \n" /* Load width for inner loop */
|
||||
".nextpixel: \n"
|
||||
|
@ -196,15 +197,16 @@ void ICODE_ATTR lcd_bitmap_transparent_part(const fb_data *src, int src_x,
|
|||
"add %[d], %[d], #2 \n" /* Uncoditionally increment dst */
|
||||
/* done here for better pipelining */
|
||||
"cmp %[px], %[fgcolor] \n" /* Compare to foreground color */
|
||||
"streqh %[fgpat], [%[d], #-2] \n" /* Store foregroud if match */
|
||||
"strheq %[fgpat], [%[d], #-2] \n" /* Store foregroud if match */
|
||||
"cmpne %[px], %[transcolor] \n" /* Compare to transparent color */
|
||||
"strneh %[px], [%[d], #-2] \n" /* Store dst if not transparent */
|
||||
"strhne %[px], [%[d], #-2] \n" /* Store dst if not transparent */
|
||||
"subs %[w], %[w], #1 \n" /* Width counter has run down? */
|
||||
"bgt .nextpixel \n" /* More in this row? */
|
||||
"add %[s], %[s], %[sstp], lsl #1 \n" /* Skip over to start of next line */
|
||||
"add %[d], %[d], %[dstp], lsl #1 \n"
|
||||
"subs %[h], %[h], #1 \n" /* Height counter has run down? */
|
||||
"bgt .rowstart \n" /* More rows? */
|
||||
END_ARM_ASM_SYNTAX_UNIFIED
|
||||
: [w]"=&r"(w), [h]"+&r"(height), [px]"=&r"(px),
|
||||
[s]"+&r"(src), [d]"+&r"(dst)
|
||||
: [width]"r"(width),
|
||||
|
|
|
@ -23,6 +23,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA
|
|||
*/
|
||||
#include "demac_config.h"
|
||||
|
||||
.syntax unified
|
||||
.section ICODE_SECTION_DEMAC_ARM,"ax",%progbits
|
||||
|
||||
.align 2
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
|
||||
#include "config.h"
|
||||
|
||||
.syntax unified
|
||||
.section .text, "ax", %progbits
|
||||
|
||||
/****************************************************************************
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
|
||||
#include "config.h"
|
||||
|
||||
.syntax unified
|
||||
.section .text, "ax", %progbits
|
||||
|
||||
|
||||
|
|
|
@ -21,6 +21,8 @@
|
|||
|
||||
#include "config.h"
|
||||
|
||||
.syntax unified
|
||||
|
||||
/* The following is an assembler optimised version of the LPC filtering
|
||||
routines needed for FLAC decoding. It is optimised for use with ARM
|
||||
processors.
|
||||
|
|
|
@ -202,6 +202,7 @@
|
|||
@*****************************************************************************
|
||||
|
||||
|
||||
.syntax unified
|
||||
.text
|
||||
.align
|
||||
|
||||
|
|
|
@ -22,6 +22,7 @@
|
|||
#include "config.h"
|
||||
#include "mad_iram.h"
|
||||
|
||||
.syntax unified
|
||||
.section ICODE_SECTION_MPA_ARM,"ax",%progbits
|
||||
|
||||
.global synth_full_odd_sbsample
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
|
||||
#include "config.h"
|
||||
|
||||
.syntax unified
|
||||
#if defined(CPU_S5L87XX)
|
||||
/* Moving this asm routine to iram is (little) faster on S5L87xx. */
|
||||
.section .icode, "ax", %progbits
|
||||
|
|
|
@ -33,6 +33,7 @@
|
|||
*/
|
||||
|
||||
#include "config.h"
|
||||
.syntax unified
|
||||
#if CONFIG_CPU == PP5002
|
||||
.section .icode,"ax",%progbits
|
||||
#else
|
||||
|
|
|
@ -38,6 +38,7 @@
|
|||
|
||||
#include "config.h"
|
||||
|
||||
.syntax unified
|
||||
.text
|
||||
.align
|
||||
.global decorr_stereo_pass_cont_arm
|
||||
|
|
|
@ -40,6 +40,7 @@
|
|||
|
||||
#include "config.h"
|
||||
|
||||
.syntax unified
|
||||
.text
|
||||
.align
|
||||
.global decorr_stereo_pass_cont_arml
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue