Part Number: TM4C1294NCPDT
Hi,
I'm using the Tivaware provided library flash access functions, FlashErase() and FlashProgram(), and I'm having a strange issue occasionally happen when writing or erasing. Using the TM4C1294NCPDT processor, we are splitting the flash to employ two partitions to handle an updating scheme. The problem I'm seeing is something appearing to be a memory leak type of issue when either FlashErase or FlashProgram is used. It's inconsistent which function causes it, and it's inconsistent where in the process of updating the other side of flash this happens. The outcome is the program exhibits a failure where all of the "Core Register" values are overwritten to a single value. Sometimes it's something like 0x0000000C (as seen in the provided image), or 0x0004D769, or something else entirely. It's very inconsistent when it happens. I can make a few changes in the code and that can cause the issue to present itself or go away.
This project uses:
- Code Composer 7.3.0.00019
- TivaWare 2.1.3.156
- TI v18.12.6.LTS compiler
I've come across a few e2e forum posts that seem to point at this exact issue. The first is:

In that post, Dmitry is using the same Tiva variant, same version of code composer, etc, and he seems to be having the same problem. Did I miss a suitable resolution to this issue on the forum thread, or was a solution not presented?
The other post is also referenced in that thread, and although it uses a TM4C123 it seems to apply from the description to the problem:

Regards,
Alex
