aboutsummaryrefslogtreecommitdiffstats
path: root/powerpc/TargetPrinter.ml
diff options
context:
space:
mode:
authorBernhard Schommer <bernhardschommer@gmail.com>2015-10-13 14:57:31 +0200
committerBernhard Schommer <bernhardschommer@gmail.com>2015-10-13 14:57:31 +0200
commit16315711d815580afa77f93424cc49c7362ab5b8 (patch)
tree09c5d771858c83a606f26dbfcf7b266822778135 /powerpc/TargetPrinter.ml
parentdaed22eb5afdc86267c8f90b55008267c9383fca (diff)
downloadcompcert-kvx-16315711d815580afa77f93424cc49c7362ab5b8.tar.gz
compcert-kvx-16315711d815580afa77f93424cc49c7362ab5b8.zip
Implement the usage of the debug_str section for the gcc backend.
GCC prints all string larger than 3 characters in the debug_str section which reduces the size of the debug information since entries containing the same string now map to the same string in the debug_str sections. Bug 17392.
Diffstat (limited to 'powerpc/TargetPrinter.ml')
-rw-r--r--powerpc/TargetPrinter.ml4
1 files changed, 3 insertions, 1 deletions
diff --git a/powerpc/TargetPrinter.ml b/powerpc/TargetPrinter.ml
index 250686be..61ac5e42 100644
--- a/powerpc/TargetPrinter.ml
+++ b/powerpc/TargetPrinter.ml
@@ -126,7 +126,8 @@ module Linux_System : SYSTEM =
| Section_debug_info _ -> ".section .debug_info,\"\",@progbits"
| Section_debug_abbrev -> ".section .debug_abbrev,\"\",@progbits"
| Section_debug_loc -> ".section .debug_loc,\"\",@progbits"
- | Section_debug_line _ -> ".section .debug_line,\"\",@progbits\n"
+ | Section_debug_line _ -> ".section .debug_line,\"\",@progbits"
+ | Section_debug_str -> ".section .debug_str,\"MS\",@progbits,1"
let section oc sec =
@@ -221,6 +222,7 @@ module Diab_System : SYSTEM =
| Section_debug_abbrev -> ".section .debug_abbrev,,n"
| Section_debug_loc -> ".section .debug_loc,,n"
| Section_debug_line s -> sprintf ".section .debug_line.%s,,n\n" s
+ | Section_debug_str -> assert false (* Should not be used *)
let section oc sec =
let name = name_of_section sec in