babywizard: I think the real question is whether the sacrifice of the e-pawn was correct. The move looked very good to me and Shirov certainly felt the same during the game until he annotated this game for NIC.
5.Bd3 - Shirov normally plays 5.Nc3 but after Svidler suprised him in Tilburg 1997 with 5...b5 6.Bd3 Qb6 7.Nb3 Qc7, which was new at the time, he decided to try something new.
7.Qe2 - 7.0-0 or 7.c4 are other serious alternatives.
10.e5? - Shirov gave it a "?" in his annotations, even though he admitted that he felt it was a good move during the game. Rybka thinks the move leads to equality (see the note to white's 15th move) and gives 10.a3, 10.g4 and 10.Be3 as possible continuations.
13...Ndxe5 - Shirov thinks black is slightly better here because it requires him quite an effort to find enough play for the pawn.
15.Kh1 - Rybka does not like this due to the note to black's 17th move. Rybka gives 15.Be3 Qc7 16.Bf4 as best and drawing by repetition.
15...Nxd3 - Shirov said that he was more afraid of 15...Ng6!? but after 16.Be3 Qc7 17.Na4 0-0 (17...Nb4 18.Be4 f5 19.c3!) 18.Bxg6 hxg6 19.Nb6 Rb8 20.Nc4 Shirov reckoned that has some compensation. Rybka evaluates the position as around equal but Rybka prefers 15...Nxd3 more.
17...Kh8?! - Shirov doubted this move because it loses a tempo and puts the king into a worse position. Rybka and Shirov gave:
<(17... f5 18. Bc7 Qa7 19. Na4 Bd8 20. Nb6 Bxc7 21. Qxc7 Rf7 22. Nxc8 Rxc7 23. Nxa7 Nxa7 24. Nd4 Nb5 25. Nxe6 Rxc2 26. a4 (26. Rxf5 Re8 27. Ref1 h5 (27... h6 28. Rf8+ Rxf8 29. Rxf8+ Kh7 black is slightly better according to ♖ybka) 28. Rf8+ Rxf8 29. Rxf8+ Kh7 black is slightly better, Shirov.) 26... Nd6 27. Rd1 Nc4 28. Rd7 white would have a hard time defending the endgame)>
24...Re8! - Black cannot allow the exchange of bishops. 24...Be6 25.Bd6 and black is worse.
26.Nc5!? - Shirov calculated and thought that 29.Qd3 would work, only to find out then that it actually doesn't work.
27...Nd4?! - A mistake according to Shirov, but Rybka regarded it as the best move. Another alternative is 27...Be6.
28.Bxe5! Nf5! - 28...fxe5? 29.Nd6 wins
29.Qg4! - The best move for white.
<(29. Qd3? Shirov Bb7! 30.Qd7 (30. Rxf5 Bxe4 31. Qd7 Bxg2+ 32. Kg1 Be7 33. Bd4 Bh3 34. Qd5 Bxf5 35. Qxf5
and black is better according to ♖ybka.) (30. Ng5!? suggested by ♖ybka and not mentioned by Shirov Bxg2+ 31. Kg1 Bxf1 32. Rxf1 b5! 33. Rxf5 fxg5 34. Bd4 and black has some advantage) 30... Bc6 31. Qf7?! (31. Qxf5 Bxe4 32. Qd7 Bxg2+ 33. Kg1 Be7 34. Bd4 Bxf1 35. Rxf1 Rd8 36. Qxe7 Rxd4 and black is better
according to ♖ybka, but it's better for white than Shirov's analysis.) 31...Nh6 32. Qh5 fxe5 and black is suddenly winning, Shirov.)>
<(29...fxe5 the only move 30. Rxf5 Be7 31. Qf3 Bxf5 32. Qxf5 and Shirov thinks white has a slight advantage here but ♖ybka thinks it's dead equal after Qc6)>
<(30... Qc6 the only move, but white still has the advantage 31. Rd6 Bg4 32. Rxc6 Bxh5 33. Re1 Nxc2 34. Rxc2 Rxe5 35. Rc8 etc..)>
Conclusion: Shirov is right about the pawn sac that it is not good. It seems that with accurate play, black should at least draw in this line.