Back to home page

LXR

 
 

    


File indexing completed on 2025-05-11 08:24:09

0001 # NEC V850 startup code
0002 
0003     .section .text
0004     .global _start
0005 
0006 _start:
0007 
0008 #if defined(__v850e__) || defined(__v850e2__) || defined(__v850e2v3__)
0009 
0010     movea   255,        r0, r20
0011     mov     65535,      r21
0012     mov     hilo(__ISR_Stack_area_end), sp
0013     mov     hilo(__ep), ep
0014     mov     hilo(__gp), gp
0015     mov     hilo(__ctbp),   r6
0016     ldsr    r6,             ctbp
0017     mov     hilo(_edata),   r6
0018     mov     hilo(_end), r7
0019 .L0:
0020     st.w    r0,     0[r6]
0021     addi    4,      r6, r6
0022     cmp     r7,     r6
0023     bl      .L0
0024 .L1:
0025     jarl    ___main,    r31
0026     addi    -16,        sp, sp
0027     mov     0,      r6
0028     mov     0,      r7
0029     mov     0,      r8
0030     /* jarl    _main,       r31 */
0031     jarl    _boot_card,     r31
0032     mov     r10,        r6
0033     jarl    _exit,      r31
0034 
0035 # else
0036     movea   255,        r0, r20
0037     mov     r0,     r21
0038     ori     65535,      r0, r21
0039     movhi   hi(__ISR_Stack_area_end),   r0, sp
0040     movea   lo(__ISR_Stack_area_end),   sp, sp
0041     movhi   hi(__ep),   r0, ep
0042     movea   lo(__ep),   ep, ep
0043     movhi   hi(__gp),   r0, gp
0044     movea   lo(__gp),   gp, gp
0045 
0046     movhi   hi(_edata), r0, r6
0047     movea   lo(_edata), r6, r6
0048     movhi   hi(_end),   r0, r7
0049     movea   lo(_end),   r7, r7
0050 .L0:
0051     st.b    r0,     0[r6]
0052     addi    1,      r6, r6
0053     cmp     r7,     r6
0054     bl      .L0
0055 .L1:
0056     /* jarl    ___main, r31 */
0057     addi    -16,        sp, sp
0058     mov     0,      r6
0059     mov     0,      r7
0060     mov     0,      r8
0061     /* jarl    _main,       r31 */
0062     jarl    _boot_card,     r31
0063     mov     r10,        r6
0064 .L2:
0065     br  .L2
0066     /* jarl    _exit,       r31 */
0067 # endif
0068 
0069     .section .data
0070     .global ___dso_handle
0071     .weak   ___dso_handle
0072 ___dso_handle:
0073     .long   0