mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-12-04 17:56:53 +00:00
Don't allow .seh_handler and .seh_handlerdata directives inside chained
unwind areas. llvm-svn: 131795
This commit is contained in:
parent
7f9c007dce
commit
525855fe48
@ -361,6 +361,8 @@ void MCStreamer::EmitWin64EHHandler(const MCSymbol *Sym, bool Unwind,
|
||||
bool Except) {
|
||||
EnsureValidW64UnwindInfo();
|
||||
MCWin64EHUnwindInfo *CurFrame = CurrentW64UnwindInfo;
|
||||
if (CurFrame->ChainedParent)
|
||||
report_fatal_error("Chained unwind areas can't have handlers!");
|
||||
CurFrame->ExceptionHandler = Sym;
|
||||
if (!Except && !Unwind)
|
||||
report_fatal_error("Don't know what kind of handler this is!");
|
||||
@ -372,6 +374,9 @@ void MCStreamer::EmitWin64EHHandler(const MCSymbol *Sym, bool Unwind,
|
||||
|
||||
void MCStreamer::EmitWin64EHHandlerData() {
|
||||
EnsureValidW64UnwindInfo();
|
||||
MCWin64EHUnwindInfo *CurFrame = CurrentW64UnwindInfo;
|
||||
if (CurFrame->ChainedParent)
|
||||
report_fatal_error("Chained unwind areas can't have handlers!");
|
||||
}
|
||||
|
||||
void MCStreamer::EmitWin64EHPushReg(unsigned Register) {
|
||||
|
Loading…
Reference in New Issue
Block a user