Torso, Fingers, Arm.L (IK), Arm.R (IK), Arm.R (FK), Arm.R (Tweak), Leg.L (IK), Leg.R (IK) buttons are all missing. The controllers themselves are actually there, but I have to manually unhide them using Alt-H or switching bone layers.
Adding a default metarig in a new empty blender file, and then using it to generate rig with Rigify correctly produces all of the above, so the problem must be something with my armature, but I have no clue what might be causing this.
EDIT: I was able to solve this by adding a new metarig into the scene and copying all the bone LocRotScale properties from the old one, using the script provided in this topic (thank you sambler): How to copy position, size from one armature to another?. Whatever the problem was, this fixed it and spared me from re-rigging everything from scratch.