summaryrefslogtreecommitdiff
path: root/libgcc/vtv_start.c
diff options
context:
space:
mode:
Diffstat (limited to 'libgcc/vtv_start.c')
-rw-r--r--libgcc/vtv_start.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libgcc/vtv_start.c b/libgcc/vtv_start.c
index 0bb85af35f9..68086a2dfbe 100644
--- a/libgcc/vtv_start.c
+++ b/libgcc/vtv_start.c
@@ -47,6 +47,12 @@ along with GCC; see the file COPYING3. If not see
#include "vtv-change-permission.h"
+__attribute__ ((constructor(98))) void
+__VLTunprotect (void)
+{
+ __VLTChangePermission (__VLTP_READ_WRITE);
+}
+
/* Page-aligned symbol to mark beginning of .vtable_map_vars section. */
char _vtable_map_vars_start []
__attribute__ ((__visibility__ ("protected"), used, aligned(VTV_PAGE_SIZE),