吐血 has two registers: literal (medical, vomiting blood from injury or illness) and internet slang (being so frustrated or shocked you could 'spit blood'). The slang usage is extremely common in online text and subtitles. Context usually makes the meaning clear.