Ignore:
Timestamp:
Jul 3, 2020, 7:19:17 PM (4 years ago)
Author:
coas-nagasima
Message:

ASP3, TINET, mbed を更新

File:
1 edited

Legend:

Unmodified
Added
Removed
  • EcnlProtoTool/trunk/asp3_dcre/kernel/exception.trb

    r321 r429  
    66#
    77#   Copyright (C) 2015 by FUJI SOFT INCORPORATED, JAPAN
    8 #   Copyright (C) 2015,2016 by Embedded and Real-Time Systems Laboratory
     8#   Copyright (C) 2015-2019 by Embedded and Real-Time Systems Laboratory
    99#               Graduate School of Information Science, Nagoya Univ., JAPAN
    1010#
     
    5151
    5252#
     53#  DEF_EXCで使用できるCPU例外ハンドラ番号のデフォルト定義
     54#
     55if !defined?($EXCNO_DEFEXC_VALID)
     56  $EXCNO_DEFEXC_VALID = $EXCNO_VALID
     57end
     58
     59#
    5360#  CPU例外ハンドラに関するエラーチェック
    5461#
    55 $cfgData[:DEF_EXC].each do |key, params|
    56   # excnoがCPU例外ハンドラ番号として正しくない場合(E_PAR)[NGKI3134]
    57   if $EXCNO_VALID.index(params[:excno]).nil?
     62$cfgData[:DEF_EXC].each do |_, params|
     63  # excnoが有効範囲外の場合(E_PAR)[NGKI3134]
     64  if !$EXCNO_DEFEXC_VALID.include?(params[:excno])
    5865    error_illegal("E_PAR", params, :excno)
    5966  end
    6067
    61   # excatrが無効の場合(E_RSATR)[NGKI3131]
     68  # excatrが無効の場合(E_RSATR)[NGKI3131][NGKI5178][NGKI3123]
    6269  #(TARGET_EXCATR以外のビットがセットされている場合)
    6370  if (params[:excatr] & ~($TARGET_EXCATR)) != 0
    6471    error_illegal_sym("E_RSATR", params, :excatr, :excno)
     72  end
     73
     74  # ターゲット依存のエラーチェック
     75  if defined? TargetCheckDefExc()
     76    TargetCheckDefExc(params)
    6577  end
    6678end
     
    8294    #  CPU例外ハンドラのエントリ
    8395    #
    84     $cfgData[:DEF_EXC].each do |key, params|
     96    $cfgData[:DEF_EXC].each do |_, params|
    8597      $kernelCfgC.add("EXCHDR_ENTRY(#{params[:excno]}, " \
    8698                                                "#{params[:excno].val}, #{params[:exchdr]})")
     
    92104    #
    93105    $kernelCfgC.add("const EXCINIB _kernel_excinib_table[TNUM_DEF_EXCNO] = {")
    94     $cfgData[:DEF_EXC].each_with_index do |(key, params), index|
     106    $cfgData[:DEF_EXC].each_with_index do |(_, params), index|
    95107      $kernelCfgC.add(",") if index > 0
    96108      $kernelCfgC.append("\t{ (#{params[:excno]}), (#{params[:excatr]}), " \
Note: See TracChangeset for help on using the changeset viewer.