If a warp exits, does it still take space in the SM

If I launch a block with 32 warps, and each time 31 of them exit directly, can the SM be filled with more than 2 blocks?
I’m using a GTX 980, and it has a maximum of 64 warps per SM.

threadblock resources (e.g. registers, etc.) are not freed up until the threadblock exits.

Likewise, in order to schedule a threadblock, all necessary resources must be available/free at schedule-time

Some resources are freed up on a per-warp basis and others are freed up on a thread block basis. I think it differs from GPU to GPU. You can write a program that tests exactly when a new warp can be scheduled.