[304] | 1 | # -*- coding: utf-8 -*-
|
---|
| 2 | #
|
---|
| 3 | # ãã¹3ã®çæã¹ã¯ãªããã®ã³ã¢ä¾åé¨ï¼ARMç¨ï¼
|
---|
| 4 | #
|
---|
[305] | 5 | # $Id: core_check.trb 588 2016-02-05 12:54:58Z ertl-hiro $
|
---|
[304] | 6 | #
|
---|
| 7 |
|
---|
| 8 | #
|
---|
| 9 | # ã¿ã¼ã²ããéä¾åé¨ã®ã¤ã³ã¯ã«ã¼ã
|
---|
| 10 | #
|
---|
| 11 | IncludeTrb("kernel/kernel_check.trb")
|
---|
| 12 |
|
---|
| 13 | #
|
---|
| 14 | # å²è¾¼ã¿ãã³ãã©ãã¼ãã«ã«é¢ãããã§ãã¯
|
---|
| 15 | #
|
---|
| 16 | # DEF_INHã§ç»é²ããå²è¾¼ã¿ãã³ãã©ã®ã¿ãã§ãã¯ããï¼éã«è¨ãã¨ï¼ã³ã³ãã£
|
---|
| 17 | # ã®ã¥ã¬ã¼ã¿ã§çæããå²è¾¼ã¿ãã³ãã©ãï¼default_int_handlerã®ãã§ãã¯ã¯
|
---|
| 18 | # è¡ããªãï¼
|
---|
| 19 | #
|
---|
| 20 | inhTable = SYMBOL("_kernel_inh_table")
|
---|
[305] | 21 | $cfgData[:DEF_INH].each do |key, params|
|
---|
[304] | 22 | inthdr = PEEK(inhTable + params[:inhno] * $sizeof_FP, $sizeof_FP)
|
---|
| 23 |
|
---|
| 24 | # å²è¾¼ã¿ãã³ãã©ã®å
|
---|
| 25 | é çªå°ã®ãã§ãã¯ï¼»NGKI3056ï¼½
|
---|
| 26 | if (inthdr & ($CHECK_FUNC_ALIGN - 1)) != 0
|
---|
| 27 | error_wrong_id("E_PAR", params, :inthdr, :inhno, "not aligned")
|
---|
| 28 | end
|
---|
| 29 | if $CHECK_FUNC_NONNULL == 1 && inthdr == 0
|
---|
| 30 | error_wrong_id("E_PAR", params, :inthdr, :inhno, "null")
|
---|
| 31 | end
|
---|
| 32 | end
|
---|
| 33 |
|
---|
| 34 | #
|
---|
| 35 | # CPUä¾å¤ãã³ãã©ãã¼ãã«ã«é¢ãããã§ãã¯
|
---|
| 36 | #
|
---|
| 37 | # DEF_EXCã§ç»é²ããCPUä¾å¤ãã³ãã©ã®ã¿ãã§ãã¯ããï¼éã«è¨ãã¨ï¼
|
---|
| 38 | # default_exc_handlerã®ãã§ãã¯ã¯è¡ããªãï¼
|
---|
| 39 | #
|
---|
[305] | 40 | excTable = SYMBOL("_kernel_exc_table")
|
---|
[304] | 41 | $cfgData[:DEF_EXC].each do |key, params|
|
---|
| 42 | exchdr = PEEK(excTable + params[:excno] * $sizeof_FP, $sizeof_FP)
|
---|
| 43 |
|
---|
| 44 | # CPUä¾å¤ãã³ãã©ã®å
|
---|
| 45 | é çªå°ã®ãã§ãã¯ï¼»NGKI3135ï¼½
|
---|
| 46 | if (exchdr & ($CHECK_FUNC_ALIGN - 1)) != 0
|
---|
| 47 | error_wrong_id("E_PAR", params, :exchdr, :excno, "not aligned")
|
---|
| 48 | end
|
---|
| 49 | if $CHECK_FUNC_NONNULL == 1 && exchdr == 0
|
---|
| 50 | error_wrong_id("E_PAR", params, :exchdr, :excno, "null")
|
---|
| 51 | end
|
---|
| 52 | end
|
---|