For Megastar Salman Khan,
Abhi Saans Lene Ki - Jeet 
Saanson Ne - Dabangg 2 
For Shah Rukh Khan,
First song was the title track from Ram Jaane but Sonu's voice was filmed on Vivek Mushran while Udit's voice for Shah Rukh Khan.
The first song with Sonu's voice (solo) filmed on Shah Rukh was,
Yeh Dil Deewana - Pardes 
Halka Halka - Raees [2017 - Not used in the film]
If we consider only the song used in the film then,
Phir Milenge Chalte Chalte - Rab Ne Bana Di Jodi 
For Aamir Khan,
Sonu Nigam sang Zindagi Maut Na Ban Jaye from Sarfarosh but not filmed on Aamir Khan.
First song filmed on Aamir Khan was,
Tanhayee - Dil Chahta Hai 
Bhagwan Hai Kahan - PK 
Love is a Waste of Time - PK 
Sonu Nigam is very underrated singer...
Far better than new singers
Jeene ke h char din
One of my all time favorites.....
ingredients for a super hit movie 00s
yrf production,srk,sonu nigam songs,javed akhtar lyrics,some effort on script
ingridients for super hit movie in 10s
bhai shirt utar do
Recipe for disaster post 2010: Take Ranbir Kapoor in your movie.
haha come on its a compliment to salman that only his presence made the films hits
Ingredient for hit movie in 2010s remove that hirani made star ranbir from the movie..simple(muscle)
Hirani can give an ATG with kartik aryaan too. He's that big.
Such an amazing singer. I wonder why isn't he considered as much as he used to be. Yeah Arijit is good but I'd prefer the likes of Sonu and KK
Like abhi saans and Ye Dil Deewana from the songs but my favorite Sonu songs are Sandese ati hain and panchchi nadiya pawan