1. A method, in a data processing system, for reducing runtime coherency checking, the method comprising: responsive to a call being issued during execution of a compiled and optimized code, determining whether the call is for at least one of a DMA get operation to read data from memory into a direct buffer or a DMA put operation to write data from the direct buffer to the memory; responsive to the call being the DMA get operation, determining whether a software cache write operation has been issued to a software controlled cache for the since a last flush operation; and responsive to the software cache write operation being issued to the software controlled cache for the data since the last flush operation, performing a DMA get runtime coherency check between the software controlled cache and the direct buffer.