Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ASSERT -prof_pcs on ARM #2905

Closed
toshipiazza opened this issue Mar 28, 2018 · 0 comments
Closed

ASSERT -prof_pcs on ARM #2905

toshipiazza opened this issue Mar 28, 2018 · 0 comments

Comments

@toshipiazza
Copy link
Contributor

When running a client which inserts any clean call with -prof_pcs on ARM, I see the following assertion:

(xenial)piazzt@localhost:/tmp/dynamorio-master$ ./bin32/drrun -debug -prof_pcs -c ./api/bin/libinscount.so -- true
<Starting application /bin/true (19351)>
...
Client inscount is running
<Application /bin/true (19351).  Internal Error: DynamoRIO debug check failure: Not implemented @/home/piazzt/SD/Build/dynamorio-master/core/arch/instr_shared.c:3088 (0)
(Error occurred @0 frags)
version 7.0.17614, custom build
-no_dynamic_options -prof_pcs -client_lib '/tmp/dynamorio-master/api/bin/libinscount.so;0;' -code_api -stack_size 56K -signal_stack_size 32K -max_elide_jmp 0 -max_elide_call 0 -early_inject -emulate_brk -no_inline_ignored_syscalls -native_exec_default_list '' -no_native_exec_managed_code -no_indcall2direct
/tmp/dynamorio-master/api/bin/libinscount.so=0xb493a000
/usr/lib/arm-linux-gnueabihf/libstdc++.so.6=0xb479a000
/lib/arm-linux-gnueabihf/libgcc_s.so.1=0xb4606000
/lib/arm-linux-gnueabihf/libm.so.6=0xb4721000
/lib/arm-linux-gnueabihf/libc.so.6=0xb4634000
/lib/ld-linux-armhf.so.3=0xb48f7000
/tmp/dynamorio-master/ext/lib32/debug/libdrmgr.so=0xb4921000>
@toshipiazza toshipiazza self-assigned this Mar 28, 2018
toshipiazza added a commit that referenced this issue Mar 28, 2018
Fixes an NYI on ARM when running -prof_pcs with a client that emits a clean
call by reusing code pre-existing with Aarch64

Fixes #2905
toshipiazza added a commit that referenced this issue Apr 11, 2018
Fixes an NYI on ARM when running -prof_pcs with a client that emits a clean
call by reusing code pre-existing with Aarch64

Also fixes an assumption that SCRATCH_REG0 was dead just after parameter
preparation in a clean call, but this assumption is only safe for x86

Finally, prints out DR_WHERE_CLEAN_CALLEE statistics

Fixes #2905
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant