This is a misconception that smaller engine is BOUND to give better fuel mileage. It also depends on how much stress you are putting on the engine. For example, a 1300 car would give better mileage at 100 + speed than a 800 cc because 800 would be struggling (high rpm) a lot than the bigger engine.
smaller engines might be fuel efficient in city driving where you would hardly cross 80+ speed, but again city driving depends on the variables like stop and go, idling, etc.
For example, a 1300 cc Toyota (yaris) and a 1000 cc Cultus gives same mileage inside city (12.5 - 13.5) but on highway speed, Toyota Yaris gave me 19.6 km at 100km/h speed recently i checked, which i never got from a cultus on such speeds.