Dmitriy Ivanov
f4cb631364
Add IFUNC support for arm64 and IRELATIVE reloc
...
There are number of changes in the way IFUNC related relocations are done:
1. IRELATIVE relocations are now supported for x86/x86_64 and arm64.
2. IFUNC relocations are now relying on static linker to generate
them in correct order - this removes necessety of additional
relocation pass for ifuncs.
3. Related to 2: rela?.dyn relocations are preformed before .plt ones.
4. Ifunc are resolved on symbol lookup this approach allowed to avoid
mprotect(PROT_WRITE) call on r-x program segments.
Bug: 17399706
Bug: 17177284
(cherry picked from commit 9aea164457c269c475592da36b4655d45f55c7bc)
Change-Id: Ie19d900fc203beb93faf8943b0d06d534a6de4ad
2014-10-01 16:04:31 -07:00
..
2014-10-01 16:04:31 -07:00
2014-10-01 16:04:31 -07:00
2014-10-01 16:01:28 -07:00
2014-05-13 19:17:46 -07:00
2014-05-30 18:16:09 -07:00
2013-12-03 18:42:41 -08:00
2013-12-03 18:42:41 -08:00
2014-04-18 10:29:16 -07:00
2014-02-18 15:39:24 -08:00
2014-07-02 13:20:47 -07:00
2014-10-01 16:04:31 -07:00
2014-02-06 20:12:21 -08:00
2014-09-10 20:30:23 -07:00
2013-02-01 14:51:19 -08:00
2014-07-23 16:07:33 -07:00
2014-02-24 20:22:11 +00:00
2014-02-06 20:12:21 -08:00
2013-02-11 16:39:10 -08:00
2014-04-29 16:28:56 -07:00
2014-07-28 09:33:00 -07:00
2014-09-05 16:12:42 -07:00
2014-08-27 17:22:29 +00:00
2014-06-16 23:35:53 -07:00
2014-05-16 15:31:55 -07:00
2014-05-16 15:31:55 -07:00
2014-05-16 15:31:55 -07:00
2014-05-16 15:31:55 -07:00
2014-05-16 15:31:55 -07:00
2014-05-16 15:31:55 -07:00
2014-05-16 15:31:55 -07:00
2014-05-16 15:31:55 -07:00
2014-05-16 15:31:55 -07:00
2014-05-16 15:31:55 -07:00
2014-05-16 15:31:55 -07:00
2014-05-16 15:31:55 -07:00
2014-05-16 15:31:55 -07:00
2014-05-16 15:31:55 -07:00
2014-10-01 16:03:51 -07:00
2014-05-13 10:44:07 -07:00
2013-02-13 13:11:11 -08:00
2014-10-01 16:03:51 -07:00
2014-05-13 11:19:57 -07:00
2014-05-13 11:19:57 -07:00
2013-10-29 14:55:11 -07:00
2014-07-24 15:14:06 -07:00
2014-05-14 10:02:03 -07:00
2014-04-10 20:44:27 -07:00
2014-02-06 20:12:21 -08:00
2013-10-11 16:20:08 -07:00
2014-02-06 20:12:21 -08:00
2014-09-02 11:37:02 -07:00
2014-02-21 16:27:21 +00:00
2014-08-27 17:22:29 +00:00
2014-07-29 10:48:34 -07:00
2014-10-01 16:03:40 -07:00
2013-02-13 14:40:48 -08:00
2014-05-09 22:29:23 +01:00
2014-05-05 19:48:55 -07:00
2014-06-12 13:16:36 -07:00
2014-05-13 11:19:57 -07:00
2014-04-01 17:42:31 -07:00
2014-02-06 20:12:21 -08:00
2014-04-15 15:29:32 -07:00
2014-09-24 16:01:18 -07:00
2014-02-18 15:39:24 -08:00
2013-11-13 13:14:31 -08:00
2014-07-16 15:15:53 -07:00
2014-01-03 14:49:37 -08:00
2014-02-18 15:48:56 -08:00
2014-02-06 20:12:21 -08:00
2014-06-12 13:16:36 -07:00
2014-07-25 15:24:57 -07:00
2014-06-11 15:57:57 -07:00
2014-10-01 16:01:28 -07:00
2014-08-21 19:23:53 -07:00
2014-08-06 13:00:54 -07:00