Solved! Go to Solution.
Hello
According to the HC12 back end documentation,
The "Branch JSR to BSR Optimization" uses a BSR instead of a JSR to call a function, if the offset is small enough and known at compilation time.
When the called function is implemented after the callee, the offset is not known and the HLI assembler is using a JSR (always). You cannot block that from happening.
Currently you have two ways of fixing that:
1- implement the callee after the called function
2- User macro assembler to encode the two functions
I hope this helps.
CrasyCat
Hello
According to the HC12 back end documentation,
The "Branch JSR to BSR Optimization" uses a BSR instead of a JSR to call a function, if the offset is small enough and known at compilation time.
When the called function is implemented after the callee, the offset is not known and the HLI assembler is using a JSR (always). You cannot block that from happening.
Currently you have two ways of fixing that:
1- implement the callee after the called function
2- User macro assembler to encode the two functions
I hope this helps.
CrasyCat