Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7ea582e1 authored by Chih-Hung Hsieh's avatar Chih-Hung Hsieh
Browse files

Use unified syntax to compile with both llvm and gas.

* Remove useless stab debug info directives .func and .endfunc,
  which are not recognized by clang/llvm integrated assembler.
* Replace require8 with REQUIRE8, preserve8 with PRESERVE8.
* Replace LDRNESB with LDRSBNE, LDREQSB with LDRSBEQ, etc.
* Replace VST1 {*.U8} with VST1.8 ..., VLD1 {*.U8} with VLD1.8,
  and VMOV with VMOV.I8.
* New assembler output code is identical or equivalent to old gas output.
  For example, the 3 references of
      LDR      r7, =0x80808080
  in omxdl/arm_neon/vc/m4p10/src_gcc/armVCM4P10_Average_4x_Align_unsafe_s.S
  produced 3 instances of
      .word   0x80808080
  by llvm integrated assembler but only one by gas.

Change-Id: Ifdcd5bee915a7534198d7f219bceab72045f6a22
parent e1d095fa
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -94,8 +94,6 @@ ifeq ($(TARGET_ARCH),arm)
    LOCAL_C_INCLUDES += $(LOCAL_PATH)/./omxdl/arm_neon/api \
                        $(LOCAL_PATH)/./omxdl/arm_neon/vc/api \
                        $(LOCAL_PATH)/./omxdl/arm_neon/vc/m4p10/api
    # h264bsdWriteMacroblock.S does not compile with Clang.
    LOCAL_CLANG_ASFLAGS_arm += -no-integrated-as
  endif
endif

+0 −6
Original line number Diff line number Diff line
@@ -26,7 +26,6 @@
    .text

    .global armVCM4P10_Average_4x4_Align0_unsafe
    .func   armVCM4P10_Average_4x4_Align0_unsafe
armVCM4P10_Average_4x4_Align0_unsafe:
    PUSH     {r4-r6,lr}
    LDR      r7, =0x80808080
@@ -55,10 +54,8 @@ armVCM4P10_Average_4x4_Align0_unsafe:
    EOR      r4,r4,r7
    STR      r4,[r2],r3
    POP      {r4-r6,pc}
    .endfunc

    .global armVCM4P10_Average_4x4_Align2_unsafe
    .func   armVCM4P10_Average_4x4_Align2_unsafe
armVCM4P10_Average_4x4_Align2_unsafe:
    PUSH     {r4-r6,lr}
    LDR      r7, =0x80808080
@@ -99,10 +96,8 @@ armVCM4P10_Average_4x4_Align2_unsafe:
    EOR      r4,r4,r7
    STR      r4,[r2],r3
    POP      {r4-r6,pc}
    .endfunc

    .global armVCM4P10_Average_4x4_Align3_unsafe
    .func   armVCM4P10_Average_4x4_Align3_unsafe
armVCM4P10_Average_4x4_Align3_unsafe:
    PUSH     {r4-r6,lr}
    LDR      r7, =0x80808080
@@ -143,7 +138,6 @@ armVCM4P10_Average_4x4_Align3_unsafe:
    EOR      r4,r4,r7
    STR      r4,[r2],r3
    POP      {r4-r6,pc}
    .endfunc

    .end
+0 −4
Original line number Diff line number Diff line
@@ -26,7 +26,6 @@
    .text

    .global armVCM4P10_DeblockingChromabSLT4_unsafe
    .func   armVCM4P10_DeblockingChromabSLT4_unsafe
armVCM4P10_DeblockingChromabSLT4_unsafe:
    VLD1.32  {d18[0]},[r5]!
    VSUBL.U8 q11,d5,d9
@@ -50,10 +49,8 @@ armVCM4P10_DeblockingChromabSLT4_unsafe:
    VQMOVUN.S16 d29,q14
    VQMOVUN.S16 d24,q12
    BX       lr
    .endfunc

    .global armVCM4P10_DeblockingChromabSGE4_unsafe
    .func   armVCM4P10_DeblockingChromabSGE4_unsafe
armVCM4P10_DeblockingChromabSGE4_unsafe:
    VHADD.U8 d13,d4,d9
    VHADD.U8 d31,d8,d5
@@ -63,7 +60,6 @@ armVCM4P10_DeblockingChromabSGE4_unsafe:
    VRHADD.U8 d13,d13,d5
    VRHADD.U8 d31,d31,d9
    BX       lr
    .endfunc

    .end
+0 −4
Original line number Diff line number Diff line
@@ -26,7 +26,6 @@
    .text

    .global armVCM4P10_DeblockingLumabSLT4_unsafe
    .func   armVCM4P10_DeblockingLumabSLT4_unsafe
armVCM4P10_DeblockingLumabSLT4_unsafe:
    VSUBL.U8 q11,d5,d9
    VLD1.8   {d18[]},[r5]!
@@ -66,10 +65,8 @@ armVCM4P10_DeblockingLumabSLT4_unsafe:
    VBIF     d24,d8,d16
    VBIF     d25,d9,d12
    BX       lr
    .endfunc

    .global armVCM4P10_DeblockingLumabSGE4_unsafe
    .func   armVCM4P10_DeblockingLumabSGE4_unsafe
armVCM4P10_DeblockingLumabSGE4_unsafe:
    VSHR.U8  d19,d0,#2
    VADD.I8  d19,d19,d15
@@ -111,7 +108,6 @@ armVCM4P10_DeblockingLumabSGE4_unsafe:
    VBIF     d24,d8,d16
    VBIF     d28,d10,d12
    BX       lr
    .endfunc

    .end
+0 −2
Original line number Diff line number Diff line
@@ -42,7 +42,6 @@
    .hidden   armVCM4P10_ZigZag_4x4

    .global armVCM4P10_DecodeCoeffsToPair
    .func   armVCM4P10_DecodeCoeffsToPair
armVCM4P10_DecodeCoeffsToPair:
    PUSH     {r4-r12,lr}
    SUB      sp,sp,#0x40
@@ -302,7 +301,6 @@ L0x344:
L0x35c:
    ADD      sp,sp,#0x40
    POP      {r4-r12,pc}
    .endfunc

.LarmVCM4P10_CAVLCCoeffTokenTables:
    .word   armVCM4P10_CAVLCCoeffTokenTables-(P0+8)
Loading