Refine gdb sample code

This commit is contained in:
colin 2022-02-24 06:04:58 +00:00
parent 3258c057e3
commit ccc993e003
4 changed files with 38 additions and 8 deletions

View File

@ -1,11 +1,31 @@
/*Copyright 2020-2021 T-Head Semiconductor Co., Ltd.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
.global main
main:
# csrsi mstatus, 0x8
# csrci mhcr, 0x1
# csrci mhcr, 0x2
csrsi mstatus, 0x8
csrci 0x7C1, 0x1 # csrci mhcr, 0x1
csrci 0x7C1, 0x2 # csrci mhcr, 0x2
loop:
addi x2, x2, 1
addi x3, x3, 1
addi x4, x4, 1
addi x5, x5, 1
addi x6, x6, 1
addi x7, x7, 1
addi x8, x8, 1
j loop

View File

@ -3,3 +3,4 @@
*.obj
*.hex
*.elf
*.dis

View File

@ -21,5 +21,12 @@ csrci 0x7C1, 0x1 # csrci mhcr, 0x1
csrci 0x7C1, 0x2 # csrci mhcr, 0x2
loop:
addi x2, x2, 1
addi x3, x3, 1
addi x4, x4, 1
addi x5, x5, 1
addi x6, x6, 1
addi x7, x7, 1
addi x8, x8, 1
j loop

View File

@ -83,6 +83,9 @@ ${FILE}.hex : ${FILE}.elf
${OBJCOPY} ${HEXFLAGS} $< ${DATA_HEX} -j .data* -j .bss -j .COMMON
${OBJCOPY} ${HEXFLAGS} $< $@
${FILE}.dis : ${FILE}.elf
${OBJDUMP} -S $< > ${FILE}.dis
INST_PAT = inst.pat
DATA_PAT = data.pat
FILE_PAT = case.pat
@ -93,15 +96,14 @@ FILE_PAT = case.pat
${CONVERT} ${DATA_HEX} ${DATA_PAT}
${CONVERT} ${FILE_HEX} ${FILE_PAT}
#--------------------------------------------------------------------
# target setting
.PHONY :all
all : ${FILE}.pat ${FILE}.hex ${FILE}.elf ${FILE}.obj
all : clean ${FILE}.pat ${FILE}.hex ${FILE}.elf ${FILE}.obj ${FILE}.dis
#---------------------------------------------------------------------
# clean some medium code and .pat
.PHONY :clean
clean:
rm -rf *.o *.pat *.obj *.hex
rm -rf *.o *.pat *.obj *.hex *.dis