ppc multlibs and BSP removal was Re: powerpc altivec support

Ralf Corsepius ralf.corsepius at rtems.org
Fri Feb 11 03:06:59 UTC 2005


On Thu, 2005-02-10 at 21:16 +0300, Sergei Organov wrote:

> Where exactly do you see more suspicious spots?

rtems-cvs/trunk.


For example c/src/lib/libcpu/powerpc/ppc403/vectors/vectors.S
contains this near line 47:

        /* Where this file will be loaded */
        .set    file_base, PPC_VECTOR_FILE_BASE

        /* Offset to store reg 0 */

        .set    IP_LINK, 0
/* PPC_ABI_EABI */
        .set    IP_0, (IP_LINK + 8)
        .set    IP_2, (IP_0 + 4)

        .set    IP_3, (IP_2 + 4)
        .set    IP_4, (IP_3 + 4)

Note the hard-coded "8" below the PPC_ABI_EABI comment (I added several
such comments when removing POWEROPEN at places which had formerly been
"guarded" by PPC_ABI_POWEROPEN defines).

A list of all spots I suspect can be found in the attachment below.

[
It contains the manually edited output from
# grep -R -C 5 -n PPC_ABI \
 cpukit/score/cpu/powerpc \
 c/src/lib/libcpu/powerpc \
 c/src/lib/libbsp/powerpc
]


Ralf

-------------- next part --------------
--
c/src/lib/libcpu/powerpc/ppc403/vectors/vectors.S-47-	.set	file_base, PPC_VECTOR_FILE_BASE
c/src/lib/libcpu/powerpc/ppc403/vectors/vectors.S-48-
c/src/lib/libcpu/powerpc/ppc403/vectors/vectors.S-49-	/* Offset to store reg 0 */
c/src/lib/libcpu/powerpc/ppc403/vectors/vectors.S-50-
c/src/lib/libcpu/powerpc/ppc403/vectors/vectors.S-51-	.set	IP_LINK, 0
c/src/lib/libcpu/powerpc/ppc403/vectors/vectors.S:52:/* PPC_ABI_EABI */
c/src/lib/libcpu/powerpc/ppc403/vectors/vectors.S-53-	.set	IP_0, (IP_LINK + 8)
c/src/lib/libcpu/powerpc/ppc403/vectors/vectors.S-54-	.set	IP_2, (IP_0 + 4)
c/src/lib/libcpu/powerpc/ppc403/vectors/vectors.S-55-
c/src/lib/libcpu/powerpc/ppc403/vectors/vectors.S-56-	.set	IP_3, (IP_2 + 4)
c/src/lib/libcpu/powerpc/ppc403/vectors/vectors.S-57-	.set	IP_4, (IP_3 + 4)
--
c/src/lib/libbsp/powerpc/ppcn_60x/vectors/vectors.S-48-#ifndef PPC_VECTOR_FILE_BASE
c/src/lib/libbsp/powerpc/ppcn_60x/vectors/vectors.S-49-#error "PPC_VECTOR_FILE_BASE is not defined."
c/src/lib/libbsp/powerpc/ppcn_60x/vectors/vectors.S-50-#endif
c/src/lib/libbsp/powerpc/ppcn_60x/vectors/vectors.S-51-
c/src/lib/libbsp/powerpc/ppcn_60x/vectors/vectors.S-52-    .set    IP_LINK, 0
c/src/lib/libbsp/powerpc/ppcn_60x/vectors/vectors.S:53:/* PPC_ABI_EABI */
c/src/lib/libbsp/powerpc/ppcn_60x/vectors/vectors.S-54-    .set    IP_0, (IP_LINK + 8)
c/src/lib/libbsp/powerpc/ppcn_60x/vectors/vectors.S-55-    .set    IP_2, (IP_0 + 4)
c/src/lib/libbsp/powerpc/ppcn_60x/vectors/vectors.S-56-
c/src/lib/libbsp/powerpc/ppcn_60x/vectors/vectors.S-57-    .set    IP_3, (IP_2 + 4)
c/src/lib/libbsp/powerpc/ppcn_60x/vectors/vectors.S-58-    .set    IP_4, (IP_3 + 4)
--
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-104-	.set	FP_31, (FP_30 + 4)
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-105-	.set	FP_FPSCR, (FP_31 + 4)
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-106-#endif
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-107-
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-108-	.set	IP_LINK, 0
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h:109:/* PPC_ABI_EABI */
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-110-	.set	IP_0, (IP_LINK + 8)
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-111-	.set	IP_2, (IP_0 + 4)
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-112-
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-113-	.set	IP_3, (IP_2 + 4)
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-114-	.set	IP_4, (IP_3 + 4)
--
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-143-	/* These must be in this order */
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-144-	.set	Nest_level, 0
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-145-	.set	Disable_level, 4
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-146-	.set	Vector_table, 8
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-147-	.set	Stack, 12
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h:148:/* PPC_ABI_EABI */
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-149-	.set	Default_r2, 16
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-150-	.set	Default_r13, 20
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-151-	.set	Switch_necessary, 24
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-152-
c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/ppc_offs.h-153-	.set	Signal, Switch_necessary + 4
--
c/src/lib/libbsp/powerpc/support/old_exception_processing/cpu.c-336- *  _CPU_Install_interrupt_stack
c/src/lib/libbsp/powerpc/support/old_exception_processing/cpu.c-337- */
c/src/lib/libbsp/powerpc/support/old_exception_processing/cpu.c-338-
c/src/lib/libbsp/powerpc/support/old_exception_processing/cpu.c-339-void _CPU_Install_interrupt_stack( void )
c/src/lib/libbsp/powerpc/support/old_exception_processing/cpu.c-340-{
c/src/lib/libbsp/powerpc/support/old_exception_processing/cpu.c:341:/* PPC_ABI_EABI */
c/src/lib/libbsp/powerpc/support/old_exception_processing/cpu.c-342-  _CPU_IRQ_info.Stack = _CPU_Interrupt_stack_high - 8;
c/src/lib/libbsp/powerpc/support/old_exception_processing/cpu.c-343-}
c/src/lib/libbsp/powerpc/support/old_exception_processing/cpu.c-344-
c/src/lib/libbsp/powerpc/support/old_exception_processing/cpu.c-345-/* Handle a spurious interrupt */
c/src/lib/libbsp/powerpc/support/old_exception_processing/cpu.c-346-static void ppc_spurious(int v, CPU_Interrupt_frame *i)
--
c/src/lib/libbsp/powerpc/support/old_exception_processing/irq_stub.S-126- */
c/src/lib/libbsp/powerpc/support/old_exception_processing/irq_stub.S-127-
c/src/lib/libbsp/powerpc/support/old_exception_processing/irq_stub.S-128-  /*
c/src/lib/libbsp/powerpc/support/old_exception_processing/irq_stub.S-129-   *  (*_ISR_Vector_table[ vector ])( vector );
c/src/lib/libbsp/powerpc/support/old_exception_processing/irq_stub.S-130-   */
c/src/lib/libbsp/powerpc/support/old_exception_processing/irq_stub.S:131:#if (PPC_ABI == PPC_ABI_SVR4 || PPC_ABI == PPC_ABI_EABI)
c/src/lib/libbsp/powerpc/support/old_exception_processing/irq_stub.S-132-	mtlr	r4
c/src/lib/libbsp/powerpc/support/old_exception_processing/irq_stub.S-133-	lwz	r2, Default_r2(r11)
c/src/lib/libbsp/powerpc/support/old_exception_processing/irq_stub.S-134-	lwz	r13, Default_r13(r11)
c/src/lib/libbsp/powerpc/support/old_exception_processing/irq_stub.S-135-	#lwz	r2, 0(r2)
c/src/lib/libbsp/powerpc/support/old_exception_processing/irq_stub.S-136-	#lwz	r13, 0(r13)


More information about the users mailing list