[sledge] Translate `invoke abort` to `abort`

Summary:
Sometimes calls to the `abort` C stdlib function appear as `invoke`
instructions in LLVM. They should be translated to the LLAIR abort
instruction just like the non-raising `call abort` case.

Reviewed By: kren1

Differential Revision: D15706574

fbshipit-source-id: 1509ed0e3
master
Josh Berdine 6 years ago committed by Facebook Github Bot
parent f3bee3f513
commit a0949495c1

@ -1037,6 +1037,8 @@ let xlate_instr :
| ["__llair_throw"] ->
let dst = Llair.Jump.mk unwind_dst args in
emit_term (Llair.Term.goto ~dst ~loc)
| ["abort"] ->
emit_term ~prefix:[Llair.Inst.abort ~loc] Llair.Term.unreachable
| ["_Znwm" (* operator new(size_t num) *)]
|[ "_ZnwmSt11align_val_t"
(* operator new(unsigned long num, std::align_val_t) *) ]

Loading…
Cancel
Save