Compare commits
2 Commits
Author | SHA1 | Date |
---|---|---|
Mikaela Szekely | 3c38492268 | 2 years ago |
Mikaela Szekely | 9c1747f43d | 2 years ago |
6 changed files with 484 additions and 16 deletions
@ -0,0 +1,46 @@ |
|||
/*
|
|||
* This file is part of the Black Magic Debug project. |
|||
* |
|||
* Copyright (C) 2022 1bitsquared - Mikaela Szekely <mikaela.szekely@qyriad.me> |
|||
* Written by Mikaela Szekely <mikaela.szekely@qyriad.me> |
|||
* |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
#include "gdb_reg.h" |
|||
|
|||
|
|||
const char *gdb_arm_preamble_first = |
|||
"<?xml version=\"1.0\"?>" |
|||
"<!DOCTYPE"; |
|||
|
|||
const char *gdb_arm_preamble_second = |
|||
"SYSTEM " |
|||
"\"gdb-target.dtd\">" |
|||
"<target>" |
|||
" <architecture>arm</architecture>"; |
|||
|
|||
|
|||
|
|||
const char *gdb_reg_type_strings[] = { |
|||
"", // GDB_TYPE_UNSPECIFIED.
|
|||
" type=\"data_ptr\"", // GDB_TYPE_DATA_PTR.
|
|||
" type=\"code_ptr\"", // GDB_TYPE_CODE_PTR.
|
|||
}; |
|||
|
|||
|
|||
const char *gdb_reg_save_restore_strings[] = { |
|||
"", // GDB_SAVE_RESTORE_UNSPECIFIED.
|
|||
" save-restore=\"no\"" // GDB_SAVE_RESTORE_NO.
|
|||
}; |
@ -0,0 +1,58 @@ |
|||
/*
|
|||
* This file is part of the Black Magic Debug project. |
|||
* |
|||
* Copyright (C) 2022 1bitsquared - Mikaela Szekely <mikaela.szekely@qyriad.me> |
|||
* Written by Mikaela Szekely <mikaela.szekely@qyriad.me> |
|||
* |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
#ifndef __GDB_REG_H |
|||
#define __GDB_REG_H |
|||
|
|||
|
|||
// The beginning XML for GDB target descriptions that are common to ARM targets,
|
|||
// save for one word: the word after DOCTYPE, which is "target" for Cortex-M, and "feature"
|
|||
// for Cortex-A. The "preamble" is thus split into two halves, with this single word missing
|
|||
// and as the split point.
|
|||
extern const char *gdb_arm_preamble_first; |
|||
|
|||
// The beginning XML for GDB target descriptions that are common to ARM targets,
|
|||
// save for one word: the word after DOCTYPE, which is "target" for Cortex-M, and "feature"
|
|||
// for Cortex-A. The "preamble" is thus split into two halves, with this single word missing
|
|||
// and as the split point.
|
|||
extern const char *gdb_arm_preamble_second; |
|||
|
|||
|
|||
// The "type" field of a register tag.
|
|||
typedef enum gdb_reg_type { |
|||
GDB_TYPE_UNSPECIFIED = 0, |
|||
GDB_TYPE_DATA_PTR, |
|||
GDB_TYPE_CODE_PTR, |
|||
} gdb_reg_type_e; |
|||
|
|||
// The strings for the "type" field of a register tag, respective to its gdb_reg_type_e value.
|
|||
extern const char *gdb_reg_type_strings[]; |
|||
|
|||
|
|||
// The "save-restore" field of a register tag.
|
|||
typedef enum gdb_reg_save_restore { |
|||
GDB_SAVE_RESTORE_UNSPECIFIED = 0, |
|||
GDB_SAVE_RESTORE_NO, |
|||
} gdb_reg_save_restore_e; |
|||
|
|||
// The strings for the "save-restore" field of a register tag, respective to its gdb_reg_save_restore_e value.
|
|||
extern const char *gdb_reg_save_restore_strings[]; |
|||
|
|||
#endif |
Loading…
Reference in new issue