You can't reserve space on the cache from your program
It isn't really in your control. The cache-control decisions are made by its own controller which studies temporal and spatial locality, among other things to decide which cache-lines to replace and which to keep.
There are usually multiple copies of your data, on different caches and the virtual-memory address-space (maps to physical memory + swap).
The way memory is managed is far more complex than that. The system generates a virtual address every-time, when dealing with memory.
This virtual address is translated into a physical address. This translation could yield an address on the cache, physical memory, etc. It does not necessarily map to one piece of memory. If it has been swapped out, it causes a page-fault and that page is loaded into memory (multiple levels).
The low level operations like cache management are not affected by your decisions at this level.