Comparing for equality between two numbers takes log2(n) levels of 2-input and gate, where n is number of binary digits in the numbers. To improve performance and reduce logic size, one can get away by comparing only lower few digits assuming upper digits are equal. In Predictive Data Forwarding, CPU speculatively forwards data in Line Fill Buffer and Store Buffer to outstanding loads if the lower bits of address match. This improves performance in case the speculation is right however in case of a mis-speculation, the data belonging to one process might end up with another, albeit for a short period of time, before CPU state being reset to the one before speculation began. Rogue In-flight Data Load exploits this to leak secret using cache based side channel and timing analysis.