OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [rtos/] [rtems/] [c/] [src/] [librdbg/] [src/] [i386/] [rdbg_cpu_asm.S] - Blame information for rev 389

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 30 unneback
/*  cpu_asm.s
2
 *
3
 *  This file contains all assembly code for the Intel i386 implementation
4
 *  of RDBG.
5
 *
6
 * $Id: rdbg_cpu_asm.S,v 1.2 2001-09-27 12:02:01 chris Exp $
7
 *
8
 */
9
 
10
#include 
11
 
12
        BEGIN_CODE
13
 
14
/*
15
 *  void copyback_data_cache_and_invalidate_instr_cache(addr, size)
16
 *
17
 *  This routine performs a copy of the data cache
18
 *  and invalidate the instruction cache
19
 */
20
 
21
        .p2align  1
22
        PUBLIC (copyback_data_cache_and_invalidate_instr_cache)
23
 
24
SYM (copyback_data_cache_and_invalidate_instr_cache):
25
        wbinvd
26
        ret
27
 
28
 
29
 
30
/*
31
 * void enterRdbg(void)
32
 *
33
 * This function perform a call to the exception 19
34
 * It is used :
35
 *   1 - in the user code, to simulate a Breakpoint.
36
 *       (with justSaveContext = 0)
37
 *   2 - in the RDBG code, to push a ctx in the list.
38
 *       (with justSaveContext = 1)
39
 *
40
 * In most of case, it will be use as described in 1.
41
 * The 2nd possibility will be used by RDBG to obtain
42
 * its own ctx
43
 */
44
 
45
        PUBLIC (enterRdbg)
46
 
47
SYM (enterRdbg):
48
        int $50
49
        ret
50
 
51
 
52
/*
53
 * void rtems_exception_prologue_50(void)
54
 *
55
 * Exception 50 is used to enter Rdbg
56
 *
57
 */
58
 
59
        .p2align 4
60
 
61
        PUBLIC (rtems_exception_prologue_50)
62
        PUBLIC (_Exception_Handler)
63
 
64
SYM (rtems_exception_prologue_50):
65
        pushl   $ 0
66
        pushl   $ 50
67
        jmp   SYM(_Exception_Handler) ;
68
 
69
 
70
END_CODE
71
 
72
END

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.