diff options
author | Ian Lance Taylor <ian@airs.com> | 2009-12-24 07:48:14 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 2009-12-24 07:48:14 +0000 |
commit | cbc999b90f8fe82cc2d2e25926e51c410d158703 (patch) | |
tree | c3baa9c2c30e0714fbafdf38b92df93130084f9f /gold/x86_64.cc | |
parent | 6c228b9caeee7c3fe760c7946fa6a4ba5cde9192 (diff) | |
download | gdb-cbc999b90f8fe82cc2d2e25926e51c410d158703.zip gdb-cbc999b90f8fe82cc2d2e25926e51c410d158703.tar.gz gdb-cbc999b90f8fe82cc2d2e25926e51c410d158703.tar.bz2 |
* x86_64.cc (Target_x86_64::do_calls_non_split): Recognize
-fsplit-stack prologue when using %r11.
Diffstat (limited to 'gold/x86_64.cc')
-rw-r--r-- | gold/x86_64.cc | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gold/x86_64.cc b/gold/x86_64.cc index e51b4ab..c31949f 100644 --- a/gold/x86_64.cc +++ b/gold/x86_64.cc @@ -2692,7 +2692,11 @@ Target_x86_64::do_calls_non_split(Relobj* object, unsigned int shndx, this->set_view_to_nop(view, view_size, fnoffset + 1, 8); } // lea NN(%rsp),%r10 - else if (this->match_view(view, view_size, fnoffset, "\x4c\x8d\x94\x24", 4) + // lea NN(%rsp),%r11 + else if ((this->match_view(view, view_size, fnoffset, + "\x4c\x8d\x94\x24", 4) + || this->match_view(view, view_size, fnoffset, + "\x4c\x8d\x9c\x24", 4)) && fnsize > 8) { // This is loading an offset from the stack pointer for a |