One of my previous companies handled it this way: We knew layoffs were coming, and that they would happen on a certain day. On that day, you got invited to one of two meetings - one on the 6th floor, and one on the 7th floor. One meeting was for everyone getting laid off, the other one was for people staying.
You didn't know which meeting was which until you got there, of course. It was awful.