Jeremy Corbyn laid into the prime minister over his 'broken promises' and for spending £100m on Brexit advertising.