■QuestionsI'm trying to bare-metal debug on a Cortex-A55.I want to perform simple memory read/write, but if the program size becomes large enough, the program hangs up. When I connected the DS-5 and checked the operation, I found that the branch instruction to a certain function was undefined. Why is this happening?
■ Disassembled code exampleHere is a disassembled code example. Here is an example where I want to call a function called accesss_test2().
As shown below, the program branch destination is undefined. Stepping through this instruction hangs up.
If I remove a few lines of source code, accesss_test2() is called without issue. Even if you refer to the disassembled code, the branch instruction is inserted correctly.
■ Conditions・The only difference in the C source code between when the accesss_test2() function can be correctly branched and when it can't is whether or not there are a few lines of simple memory read/write processing within the accesss_test2() function. The whole function is less than 120 lines.
・The build environment uses the following project stored in the installation directory of DS-5 v5.29.3. startup_Cortex-A55_Cortex-A75
・Compiler is "Arm Compiler 6 (DS-5 built-in)".
・scatter.scat and startup.S are not edited.
Thank you for coming back to share the solution you found.