Commit Graph

92 Commits

Author SHA1 Message Date
Théophile Bastian e5693328e2 DwAsm: check global bounds 2019-07-19 00:32:42 +02:00
Théophile Bastian 574750681c Handle binaries without unwinding data 2019-07-16 11:20:05 +02:00
Théophile Bastian 382914d193 Generate_eh_elf: apply black 2019-07-16 11:18:06 +02:00
Théophile Bastian b9c6f748ce Add python benchmark 2019-07-15 21:36:31 +02:00
Théophile Bastian 4846775529 Enhance statistics generation 2019-07-15 21:34:50 +02:00
Théophile Bastian 2e449a9822 Bench: analyze failures just after fallback 2019-07-15 20:39:56 +02:00
Théophile Bastian 00c4a9af72 Speedup: add new result analysis tools 2019-07-15 17:56:29 +02:00
Théophile Bastian 2561d3ed49 Add/enhance benchmarking tools 2019-07-15 16:23:44 +02:00
Théophile Bastian 22bfb62bf3 Bench: evaluate gzip 2019-06-10 12:06:13 +02:00
Théophile Bastian ceeec6ca5d Benching: evaluate hackbench clearly, improve tools 2019-06-10 12:04:52 +02:00
Théophile Bastian a0f58b592d compiler: generate rows for CIE 2019-06-09 03:32:54 +02:00
Théophile Bastian 8d66dd9a2b Makefile: change libs order to ease compilation 2018-10-23 16:15:40 +02:00
Théophile Bastian 730d964ac5 Update README 2018-08-17 20:58:02 +02:00
Théophile Bastian 6629de9a3e stats: various modifications 2018-08-08 14:38:41 +02:00
Théophile Bastian 216e442f5b Tentative progress in stats 2018-08-08 14:38:41 +02:00
Théophile Bastian 3cb2c508a0 Add tentative WIP stats module 2018-08-08 14:38:41 +02:00
Théophile Bastian d93d2c2f6e Cleanup work tree with gitignores 2018-08-08 14:36:53 +02:00
Théophile Bastian 3990b2c6ee dwarf-assembly: support common exprs DW_OP_breg<n> 2018-08-08 14:33:20 +02:00
Théophile Bastian 310a348bce Can generate PC holes in eh_elfs
Before, the space between FDEs was abstracted away, thought as dead
space that produced an error when queried. This is not the case, though:
empty FDEs indicate undefined DWARF
2018-07-04 18:14:30 +02:00
Théophile Bastian b3c5b647b5 env/apply: fix deactivate 2018-07-04 18:13:19 +02:00
Théophile Bastian f2642a70c9 Detect PLT standard expression 2018-07-02 16:22:13 +02:00
Théophile Bastian 4181dd828a compare_sizes: compare to original program size 2018-07-02 12:44:27 +02:00
Théophile Bastian aa7b43eb27 Add env sourcing script 2018-07-02 12:33:33 +02:00
Théophile Bastian 235ba740dd Merge branch 'rbx' into lighter_c_rbx 2018-06-25 16:56:07 +02:00
Théophile Bastian a34bbd928a Add FactoredSwitchCompiler - great space gain 2018-06-25 16:32:52 +02:00
Théophile Bastian b9b66b9244 Refactor switch compiler factories 2018-06-25 11:54:45 +02:00
Théophile Bastian 6fef1c5444 Refactor switch generation 2018-06-25 11:33:36 +02:00
Théophile Bastian 12e749f542 Handle rbx 2018-06-22 09:15:10 +02:00
Théophile Bastian cd9ecafb4f Use flags in context structures 2018-06-22 09:12:32 +02:00
Théophile Bastian b6ae4b2115 Filter out consecutive equal DWARF lines 2018-06-22 09:01:57 +02:00
Théophile Bastian 21dcd7969e Add auxiliary eh_elfs directories 2018-06-22 08:56:20 +02:00
Théophile Bastian da05f6b9f1 Patch holes in big switches 2018-06-20 14:13:19 +02:00
Théophile Bastian 10ead4df37 gen_eh_elf: add aux directories 2018-06-20 14:12:11 +02:00
Théophile Bastian 79dac37334 compare_sizes: fix with symlinks 2018-06-18 11:37:04 +02:00
Théophile Bastian 262d658674 Add hackbench 2018-06-13 19:55:41 +02:00
Théophile Bastian 81b3419690 Use max(uintptr_t) as error, not assert(0) 2018-06-13 19:13:33 +02:00
Théophile Bastian d53fcd22c6 gen_eh_elf: symlinks: remove if present 2018-06-12 16:36:32 +02:00
Théophile Bastian 65b08a444a gen_eh_elf: also generate appropriate symlinks 2018-06-11 19:21:22 +02:00
Théophile Bastian c0504e07c0 gen_eh_elf: add -g option
Allows compiling the eh_elf.so files with -g
2018-06-05 18:26:13 +02:00
Théophile Bastian fd6c75b2f5 Add --enable-deref-arg to helptext 2018-06-05 18:25:34 +02:00
Théophile Bastian 5661ccbefc shared: add typedef for fde func with deref callback 2018-06-04 16:56:57 +02:00
Théophile Bastian 273edde1ce Refactor generate_eh_elf args handling
Use a `config` class
2018-06-04 16:56:53 +02:00
Théophile Bastian 715a8f371a Add two csmith benching scripts 2018-06-04 15:07:38 +02:00
Théophile Bastian 7960b5ba08 Add and implement --enable-deref-arg feature 2018-06-01 19:52:41 +02:00
Théophile Bastian df2d6179a8 Add a libunwind-powered stack_walker
Preserves stack_walker's interface (one can link against stack_walker or
stack_walker_unwind indifferently).
2018-05-18 11:33:39 +02:00
Théophile Bastian 6854eb56e4 [BREAKING CHANGE] Unwinding stops at the end
This introduces a breaking change: [undefined] was previously
represented by 0, and is now represented by
`numeric_limits<uintptr_t>::max()`
2018-05-16 16:51:01 +02:00
Théophile Bastian 209e668505 Add READMEs 2018-05-15 18:13:09 +02:00
Théophile Bastian ee6e534fc9 Add .rodata to compare-sizes 2018-05-15 16:14:17 +02:00
Théophile Bastian 49cd75b7b7 Gen_eh_elf: add --force (force re-generation) 2018-05-11 17:58:09 +02:00
Théophile Bastian 4ccd49fb8a gen_eh_elf: handle -O{0,1,2,3,s} directly 2018-05-11 15:53:02 +02:00