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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-3.0/] [packages/] [infra/] [current/] [cdl/] [assert.cdl] - Blame information for rev 825

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

Line No. Rev Author Line
1 786 skrzyp
# ====================================================================
2
#
3
#      assert.cdl
4
#
5
#      Infrastructure debugging/assertion configuration data
6
#
7
# ====================================================================
8
## ####ECOSGPLCOPYRIGHTBEGIN####
9
## -------------------------------------------
10
## This file is part of eCos, the Embedded Configurable Operating System.
11
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
12
##
13
## eCos is free software; you can redistribute it and/or modify it under
14
## the terms of the GNU General Public License as published by the Free
15
## Software Foundation; either version 2 or (at your option) any later
16
## version.
17
##
18
## eCos is distributed in the hope that it will be useful, but WITHOUT
19
## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20
## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
21
## for more details.
22
##
23
## You should have received a copy of the GNU General Public License
24
## along with eCos; if not, write to the Free Software Foundation, Inc.,
25
## 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
26
##
27
## As a special exception, if other files instantiate templates or use
28
## macros or inline functions from this file, or you compile this file
29
## and link it with other works to produce a work based on this file,
30
## this file does not by itself cause the resulting work to be covered by
31
## the GNU General Public License. However the source code for this file
32
## must still be made available in accordance with section (3) of the GNU
33
## General Public License v2.
34
##
35
## This exception does not invalidate any other reasons why a work based
36
## on this file might be covered by the GNU General Public License.
37
## -------------------------------------------
38
## ####ECOSGPLCOPYRIGHTEND####
39
# ====================================================================
40
######DESCRIPTIONBEGIN####
41
#
42
# Author(s):      jskov
43
# Original data:  bartv,hmt
44
# Contributors:
45
# Date:           1999-07-02
46
#
47
#####DESCRIPTIONEND####
48
#
49
# ====================================================================
50
 
51
# The eCos system uses a number of more specialised assertions in
52
# addition to a conventional ASSERT() macro. By default these are all
53
# enabled when general assertions are enabled, but it is possible to
54
# suppress some of them and thus reduce the size of the generated code.
55
#
56
# Preconditions check that a condition holds true at the beginning of
57
# a piece of code, typically at the start of a function. For example a
58
# kernel function might have a precondition that it is only invoked
59
# when the scheduler is locked.
60
#
61
# Postconditions check that a condition holds at the end of a piece of
62
# code, typically at the point where a function returns. For example
63
# at the end of scheduler initialisation there could be a
64
# postcondition that there is at least one runnable thread, the idle
65
# thread.
66
#
67
# Loop invariants check that a condition holds on every iteration of
68
# a loop. For example the deferred service support code in the kernel
69
# could have a loop invariant that interrupts are enabled whenever
70
# there are still DSR's pending.
71
 
72
cdl_option CYGDBG_INFRA_DEBUG_PRECONDITIONS {
73
    display       "Preconditions"
74
    default_value 1
75
    description   "
76
        This option allows individual control of preconditions.
77
        A precondition is one type of assert, which it is
78
        useful to control separately from more general asserts.
79
        The function is CYG_PRECONDITION(condition,msg)."
80
}
81
cdl_option CYGDBG_INFRA_DEBUG_POSTCONDITIONS {
82
    display       "Postconditions"
83
    default_value 1
84
    description   "
85
        This option allows individual control of postconditions.
86
        A postcondition is one type of assert, which it is
87
        useful to control separately from more general asserts.
88
        The function is CYG_POSTCONDITION(condition,msg)."
89
}
90
cdl_option CYGDBG_INFRA_DEBUG_LOOP_INVARIANTS {
91
    display       "Loop invariants"
92
    default_value 1
93
    description   "
94
        This option allows individual control of loop invariants.
95
        A loop invariant is one type of assert, which it is
96
        useful to control separately from more general asserts,
97
        particularly since a loop invariant is typically evaluated
98
        a great many times when used correctly.
99
        The function is CYG_LOOP_INVARIANT(condition,msg)."
100
}
101
 
102
cdl_option CYGDBG_INFRA_DEBUG_ASSERT_MESSAGE {
103
    display       "Use assert text"
104
    default_value 1
105
    description   "
106
        All assertions within eCos contain a text message
107
        which should give some information about the condition
108
        being tested.
109
        These text messages will end up being embedded in the
110
        application image and hence there is a significant penalty
111
        in terms of image size.
112
        It is possible to suppress the use of these messages by
113
        disabling this option.
114
        This results in smaller code size, but there is less
115
        human-readable information if an assertion actually gets
116
        triggered."
117
}
118
 
119
# EOF assert.cdl

powered by: WebSVN 2.1.0

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