diff options
author | Tong Shen <endlessroad@google.com> | 2014-08-05 01:54:19 -0700 |
---|---|---|
committer | Tong Shen <endlessroad@google.com> | 2014-08-05 11:11:33 -0700 |
commit | 547cdfd21ee21e4ab9ca8692d6ef47c62ee7ea52 (patch) | |
tree | 078d52b6025fc1e42b7343550b0dbbdad69eafac /compiler/compiled_method.h | |
parent | 8b62dc0f993d0445401655fc274e5225498fa81c (diff) | |
download | android_art-547cdfd21ee21e4ab9ca8692d6ef47c62ee7ea52.tar.gz android_art-547cdfd21ee21e4ab9ca8692d6ef47c62ee7ea52.tar.bz2 android_art-547cdfd21ee21e4ab9ca8692d6ef47c62ee7ea52.zip |
Emit CFI for x86 & x86_64 JNI compiler.
Now for host-side x86 & x86_64 ART, we are able to get complete stacktrace with even mixed C/C++ & Java stack frames.
Testing:
1. art/test/run-test --host --gdb [--64] --no-relocate 005
2. In gdb, run 'b art::Class_classForName' which is implementation of a Java native method, then 'r'
3. In gdb, run 'bt'. You should see stack frames down to main()
Change-Id: I2d17e9aa0f6d42d374b5362a15ea35a2fce96302
Diffstat (limited to 'compiler/compiled_method.h')
-rw-r--r-- | compiler/compiled_method.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/compiler/compiled_method.h b/compiler/compiled_method.h index b8cd851a1f..c98d06a01d 100644 --- a/compiler/compiled_method.h +++ b/compiler/compiled_method.h @@ -120,7 +120,8 @@ class CompiledMethod : public CompiledCode { const std::vector<uint8_t>& quick_code, const size_t frame_size_in_bytes, const uint32_t core_spill_mask, - const uint32_t fp_spill_mask); + const uint32_t fp_spill_mask, + const std::vector<uint8_t>* cfi_info); // Constructs a CompiledMethod for the Portable compiler. CompiledMethod(CompilerDriver* driver, InstructionSet instruction_set, const std::string& code, |