Uploaded image for project: 'Embedded Software & Tools'
  1. Embedded Software & Tools
  2. EXT_EP-10017

C2000 compiler does not save unused save-on-call RXL registers in interrupt routines with function calls

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Medium Medium
    • Code Generation Tools
    • CODEGEN-8097
    • Hide
      C2000_20.8.0.STS
      C2000_18.12.0.LTS
      C2000_20.2.0.LTS
      Show
      C2000_20.8.0.STS C2000_18.12.0.LTS C2000_20.2.0.LTS
    • Hide
      C2000_20.8.0.STS
      C2000_20.2.3.LTS*
      C2000_18.12.7.LTS*
      Show
      C2000_20.8.0.STS C2000_20.2.3.LTS* C2000_18.12.7.LTS*
    • default
    • When using --float_support=fpu64, avoid function calls from ISR's or ensure the called routines are inlined in to the ISR

      Inside an interrupt routine that makes a function call, all save-on-call registers (R0-R3) should be saved to the stack regardless of whether they are used in the interrupt. For C2000 with 64-bit floating point registers (--float-support=fpu64 --abi=eabi), only the 32-bit RxH halves of 64-bit floating point registers that are unused in the interrupt are being saved. If the 64-bit FP register is used in the interrupt, the entire register is saved to the stack.

            syncuser TI User
            syncuser TI User
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: