If I get paid more, I work harder. There is obviously a realistic limit on how hard I can work. The longer I stay at a company though the more knowledge I have and the more effectively I can utilize my time to accomplish my goals and those of the business.
If I can get a 20% raise somewhere else and do the same amount of work, I will do so. In order to keep me, my company just has to match my new salary offer. Something that they are free to do or reject based on their valuation of what I bring to the table.
A million dollars is a lot of money, but its significantly less if I need to buy a house in California vs Wyoming. The free market does a relatively good job of assigning capital, lets not make up arbitrary caps based on make believe morality.