Mercurial > flash_v2
diff packages/hal/h8300/arch/current/include/hal_arch.h @ 1569:10851723ceff
* src/context.S
fix broken ccr from context save.
* src/redboot_linux_exec.c
fix build error of undefined "CYGDAT_REDBOOT_H8300_LINUX_COMMAND_START"
* src/sci.c
delete waste code.
* src/vectors.S
add CYGSEM_HAL_SAVE_STUB_VECTOR.
saved parent gdb-stub breakpoint vector.
* cdl/hal_h8300.cdl
add CYGSEM_HAL_SAVE_STUB_VECTOR
move CYGSEM_HAL_H8300_VECTOR_HOOK from target cdl's
* src/vector.S
add runtime vector setup.
add trace exception pc adjust.
| author | asl |
|---|---|
| date | Tue, 06 Apr 2004 20:32:49 +0000 |
| parents | f58b62f3c85d |
| children |
line wrap: on
line diff
--- a/packages/hal/h8300/arch/current/include/hal_arch.h +++ b/packages/hal/h8300/arch/current/include/hal_arch.h @@ -92,8 +92,8 @@ externC cyg_uint32 hal_msbit_index(cyg_u #define HAL_THREAD_INIT_CONTEXT( _sp_, _thread_, _entry_, _id_ ) \ { \ register HAL_SavedRegisters *_regs_; \ - _regs_ = (HAL_SavedRegisters *)(((CYG_ADDRWORD)(_sp_)&~15) - \ - sizeof(HAL_SavedRegisters)*2); \ + _regs_ = (HAL_SavedRegisters *)(((CYG_ADDRWORD)(_sp_)) - \ + sizeof(HAL_SavedRegisters)); \ HAL_THREAD_INIT_CONTEXT_EXTRA(_regs_, _id_); \ _regs_->er0 = (CYG_WORD)(_thread_); \ _regs_->er1 = (_id_)|0xddd1; \ @@ -199,7 +199,7 @@ asm volatile (" .globl " __HAL_BREAKPOI (_regs_)->er4 = _regval_[4]; \ (_regs_)->er5 = _regval_[5]; \ (_regs_)->er6 = _regval_[6]; \ - \ + (_regs_)->sp = _regval_[7]; \ (_regs_)->ccr = _regval_[8]; \ (_regs_)->pc = (_regval_[9] & 0xffffff); \ \
