This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Add HP dwarf extensions to dwarf2.h


Nick,

>   * You have not included DW_AT_HP_block_index and
>     DW_AT_HP_unmodifiable.  (The overlap with DW_AT_MIPS_fde is not
>     relevant).

Oops, there now.

>   * The comments need to be reformatted to conform the GNU coding
>     conventions.

I _hope_ I've got this right now (added full stop and two spaces
thereafter). If there are other problems please let me know what they
are.

>   * You are including DW_ATE_lo_user in the enum dwarf_type, when it
>     is already defined by a "#define" at the end of the declaration.

Fixed.

>   * You are changing the names of the DW_ATE_... types.  You have
>     added in an _HP which does not appear in the dwarf2.h file
>     downloaded from HP's web site.  I approve of this change, but will
>     it affect HP ?  Will they accept the name change ?  (If they care
>     that is).

My view is that since they never got around to submitting this
themselves they don't care (and have given up the right to care later!). 

I also believe that all extensions should include a tag which lets you
realise that they are extensions and whose extensions they are, hence
the change.

New patch appended below.

-- Jim

James Cownie	<jcownie@etnus.com>
Etnus, LLC.     +44 117 9071438
http://www.etnus.com

Index: include/elf/ChangeLog
===================================================================
RCS file: /cvs/src/src/include/elf/ChangeLog,v
retrieving revision 1.185
diff -u -r1.185 ChangeLog
--- include/elf/ChangeLog	4 Sep 2003 11:04:37 -0000	1.185
+++ include/elf/ChangeLog	11 Sep 2003 09:56:43 -0000
@@ -1,3 +1,8 @@
+2003-09-11  James Cownie <jcownie@etnus.com>
+
+	* dwarf2.h: Add HP dwarf extensions from their hacked gdb
+        header files (ftp://ftp.hp.com/pub/lang/tools/WDB/wdb-4.0.tar.gz).
+	
 2003-09-04  Nick Clifton  <nickc@redhat.com>
 
 	* v850.h (E_V850E1_ARCH): Define.
Index: include/elf/dwarf2.h
===================================================================
RCS file: /cvs/src/src/include/elf/dwarf2.h,v
retrieving revision 1.13
diff -u -r1.13 dwarf2.h
--- include/elf/dwarf2.h	21 Aug 2003 14:03:23 -0000	1.13
+++ include/elf/dwarf2.h	11 Sep 2003 09:56:43 -0000
@@ -189,6 +189,8 @@
     DW_TAG_imported_unit = 0x3d,
     /* SGI/MIPS Extensions.  */
     DW_TAG_MIPS_loop = 0x4081,
+    /* HP extensions; see the wdb sources from ftp://ftp.hp.com/pub/lang/tools/WDB/wdb-4.0.tar.gz .  */
+    DW_TAG_HP_array_descriptor = 0x4090,
     /* GNU extensions.  */
     DW_TAG_format_label = 0x4101,	/* For FORTRAN 77 and Fortran 90.  */
     DW_TAG_function_template = 0x4102,	/* For C++.  */
@@ -328,6 +330,21 @@
     DW_AT_MIPS_abstract_name = 0x2009,
     DW_AT_MIPS_clone_origin = 0x200a,
     DW_AT_MIPS_has_inlines = 0x200b,
+    /* HP extensions.  */
+    DW_AT_HP_block_index         = 0x2000,
+    DW_AT_HP_unmodifiable        = 0x2001, /* Same as DW_AT_MIPS_fde.  */
+    DW_AT_HP_actuals_stmt_list   = 0x2010,
+    DW_AT_HP_proc_per_section    = 0x2011,
+    DW_AT_HP_raw_data_ptr        = 0x2012,
+    DW_AT_HP_pass_by_reference   = 0x2013,
+    DW_AT_HP_opt_level           = 0x2014,
+    DW_AT_HP_prof_version_id     = 0x2015,
+    DW_AT_HP_opt_flags           = 0x2016,
+    DW_AT_HP_cold_region_low_pc  = 0x2017,
+    DW_AT_HP_cold_region_high_pc = 0x2018,
+    DW_AT_HP_all_variables_modifiable = 0x2019,
+    DW_AT_HP_linkage_name        = 0x201a,
+    DW_AT_HP_prof_flags          = 0x201b,  /* In comp unit of procs_info for -g.  */
     /* GNU extensions.  */
     DW_AT_sf_names   = 0x2101,
     DW_AT_src_info   = 0x2102,
@@ -503,7 +520,15 @@
     DW_OP_call4 = 0x99,
     DW_OP_call_ref = 0x9a,
     /* GNU extensions.  */
-    DW_OP_GNU_push_tls_address = 0xe0
+    DW_OP_GNU_push_tls_address = 0xe0,
+    /* HP extensions.  */
+    DW_OP_HP_unknown     = 0xe0, /* Ouch, the same as GNU_push_tls_address.  */
+    DW_OP_HP_is_value    = 0xe1,
+    DW_OP_HP_fltconst4   = 0xe2,
+    DW_OP_HP_fltconst8   = 0xe3,
+    DW_OP_HP_mod_range   = 0xe4,
+    DW_OP_HP_unmod_range = 0xe5,
+    DW_OP_HP_tls         = 0xe6
   };
 
 #define DW_OP_lo_user	0xe0	/* Implementation-defined range start.  */
@@ -522,7 +547,16 @@
     DW_ATE_unsigned = 0x7,
     DW_ATE_unsigned_char = 0x8,
     /* DWARF 3.  */
-    DW_ATE_imaginary_float = 0x9
+    DW_ATE_imaginary_float = 0x9,
+
+    /* HP extensions.  */
+    DW_ATE_HP_float80            = 0x80, /* Floating-point (80 bit).  */
+    DW_ATE_HP_complex_float80    = 0x81, /* Complex floating-point (80 bit).  */
+    DW_ATE_HP_float128           = 0x82, /* Floating-point (128 bit).  */
+    DW_ATE_HP_complex_float128   = 0x83, /* Complex floating-point (128 bit).  */
+    DW_ATE_HP_floathpintel       = 0x84, /* Floating-point (82 bit IA64).  */
+    DW_ATE_HP_imaginary_float80  = 0x85,
+    DW_ATE_HP_imaginary_float128 = 0x86
   };
 
 #define	DW_ATE_lo_user 0x80
@@ -619,7 +653,18 @@
   {
     DW_LNE_end_sequence = 1,
     DW_LNE_set_address = 2,
-    DW_LNE_define_file = 3
+    DW_LNE_define_file = 3,
+    /* HP extensions.  */
+    DW_LNE_HP_negate_is_UV_update   = 0x11,
+    DW_LNE_HP_push_context          = 0x12,
+    DW_LNE_HP_pop_context           = 0x13,
+    DW_LNE_HP_set_file_line_column  = 0x14,
+    DW_LNE_HP_set_routine_name      = 0x15,
+    DW_LNE_HP_set_sequence          = 0x16,
+    DW_LNE_HP_negate_post_semantics = 0x17,
+    DW_LNE_HP_negate_function_exit  = 0x18,
+    DW_LNE_HP_negate_front_end_logical = 0x19,
+    DW_LNE_HP_define_proc           = 0x20
   };
 
 /* Call frame information.  */
begin 644 patch-hp-dwarf
M26YD97@Z(&EN8VQU9&4O96QF+T-H86YG94QO9PH]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]"E)#4R!F:6QE.B`O8W9S+W-R8R]S<F,O:6YC;'5D92]E;&8O0VAA
M;F=E3&]G+'8*<F5T<FEE=FEN9R!R979I<VEO;B`Q+C$X-0ID:69F("UU("UR
M,2XQ.#4@0VAA;F=E3&]G"BTM+2!I;F-L=61E+V5L9B]#:&%N9V5,;V<)-"!3
M97`@,C`P,R`Q,3HP-#HS-R`M,#`P,`DQ+C$X-0HK*RL@:6YC;'5D92]E;&8O
M0VAA;F=E3&]G"3$Q(%-E<"`R,#`S(#`Y.C4V.C0S("TP,#`P"D!`("TQ+#,@
M*S$L."!`0`HK,C`P,RTP.2TQ,2`@2F%M97,@0V]W;FEE(#QJ8V]W;FEE0&5T
M;G5S+F-O;3X**PHK"2H@9'=A<F8R+F@Z($%D9"!(4"!D=V%R9B!E>'1E;G-I
M;VYS(&9R;VT@=&AE:7(@:&%C:V5D(&=D8@HK("`@("`@("!H96%D97(@9FEL
M97,@*&9T<#HO+V9T<"YH<"YC;VTO<'5B+VQA;F<O=&]O;',O5T1"+W=D8BTT
M+C`N=&%R+F=Z*2X**PD*(#(P,#,M,#DM,#0@($YI8VL@0VQI9G1O;B`@/&YI
M8VMC0')E9&AA="YC;VT^"B`*(`DJ('8X-3`N:"`H15]6.#4P13%?05)#2"DZ
M($1E9FEN92X*26YD97@Z(&EN8VQU9&4O96QF+V1W87)F,BYH"CT]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T*4D-3(&9I;&4Z("]C=G,O<W)C+W-R8R]I;F-L=61E
M+V5L9B]D=V%R9C(N:"QV"G)E=')I979I;F<@<F5V:7-I;VX@,2XQ,PID:69F
M("UU("UR,2XQ,R!D=V%R9C(N:`HM+2T@:6YC;'5D92]E;&8O9'=A<F8R+F@)
M,C$@075G(#(P,#,@,30Z,#,Z,C,@+3`P,#`),2XQ,PHK*RL@:6YC;'5D92]E
M;&8O9'=A<F8R+F@),3$@4V5P(#(P,#,@,#DZ-38Z-#,@+3`P,#`*0$`@+3$X
M.2PV("LQ.#DL."!`0`H@("`@($177U1!1U]I;7!O<G1E9%]U;FET(#T@,'@S
M9"P*("`@("`O*B!31TDO34E04R!%>'1E;G-I;VYS+B`@*B\*("`@("!$5U]4
M04=?34E04U]L;V]P(#T@,'@T,#@Q+`HK("`@("\J($A0(&5X=&5N<VEO;G,[
M('-E92!T:&4@=V1B('-O=7)C97,@9G)O;2!F='`Z+R]F='`N:'`N8V]M+W!U
M8B]L86YG+W1O;VQS+U=$0B]W9&(M-"XP+G1A<BYG>B`N("`J+PHK("`@($17
M7U1!1U](4%]A<G)A>5]D97-C<FEP=&]R(#T@,'@T,#DP+`H@("`@("\J($=.
M52!E>'1E;G-I;VYS+B`@*B\*("`@("!$5U]404=?9F]R;6%T7VQA8F5L(#T@
M,'@T,3`Q+`DO*B!&;W(@1D]25%)!3B`W-R!A;F0@1F]R=')A;B`Y,"X@("HO
M"B`@("`@1%=?5$%'7V9U;F-T:6]N7W1E;7!L871E(#T@,'@T,3`R+`DO*B!&
M;W(@0RLK+B`@*B\*0$`@+3,R."PV("LS,S`L,C$@0$`*("`@("!$5U]!5%]-
M25!37V%B<W1R86-T7VYA;64@/2`P>#(P,#DL"B`@("`@1%=?051?34E04U]C
M;&]N95]O<FEG:6X@/2`P>#(P,&$L"B`@("`@1%=?051?34E04U]H87-?:6YL
M:6YE<R`](#!X,C`P8BP**R`@("`O*B!(4"!E>'1E;G-I;VYS+B`@*B\**R`@
M("!$5U]!5%](4%]B;&]C:U]I;F1E>"`@("`@("`@(#T@,'@R,#`P+`HK("`@
M($177T%47TA07W5N;6]D:69I86)L92`@("`@("`@/2`P>#(P,#$L("\J(%-A
M;64@87,@1%=?051?34E04U]F9&4N("`J+PHK("`@($177T%47TA07V%C='5A
M;'-?<W1M=%]L:7-T("`@/2`P>#(P,3`L"BL@("`@1%=?051?2%!?<')O8U]P
M97)?<V5C=&EO;B`@("`](#!X,C`Q,2P**R`@("!$5U]!5%](4%]R87=?9&%T
M85]P='(@("`@("`@(#T@,'@R,#$R+`HK("`@($177T%47TA07W!A<W-?8GE?
M<F5F97)E;F-E("`@/2`P>#(P,3,L"BL@("`@1%=?051?2%!?;W!T7VQE=F5L
M("`@("`@("`@("`](#!X,C`Q-"P**R`@("!$5U]!5%](4%]P<F]F7W9E<G-I
M;VY?:60@("`@(#T@,'@R,#$U+`HK("`@($177T%47TA07V]P=%]F;&%G<R`@
M("`@("`@("`@/2`P>#(P,38L"BL@("`@1%=?051?2%!?8V]L9%]R96=I;VY?
M;&]W7W!C("`](#!X,C`Q-RP**R`@("!$5U]!5%](4%]C;VQD7W)E9VEO;E]H
M:6=H7W!C(#T@,'@R,#$X+`HK("`@($177T%47TA07V%L;%]V87)I86)L97-?
M;6]D:69I86)L92`](#!X,C`Q.2P**R`@("!$5U]!5%](4%]L:6YK86=E7VYA
M;64@("`@("`@(#T@,'@R,#%A+`HK("`@($177T%47TA07W!R;V9?9FQA9W,@
M("`@("`@("`@/2`P>#(P,6(L("`O*B!);B!C;VUP('5N:70@;V8@<')O8W-?
M:6YF;R!F;W(@+6<N("`J+PH@("`@("\J($=.52!E>'1E;G-I;VYS+B`@*B\*
M("`@("!$5U]!5%]S9E]N86UE<R`@(#T@,'@R,3`Q+`H@("`@($177T%47W-R
M8U]I;F9O("`@/2`P>#(Q,#(L"D!`("TU,#,L-R`K-3(P+#$U($!`"B`@("`@
M1%=?3U!?8V%L;#0@/2`P>#DY+`H@("`@($177T]07V-A;&Q?<F5F(#T@,'@Y
M82P*("`@("`O*B!'3E4@97AT96YS:6]N<RX@("HO"BT@("`@1%=?3U!?1TY5
M7W!U<VA?=&QS7V%D9')E<W,@/2`P>&4P"BL@("`@1%=?3U!?1TY57W!U<VA?
M=&QS7V%D9')E<W,@/2`P>&4P+`HK("`@("\J($A0(&5X=&5N<VEO;G,N("`J
M+PHK("`@($177T]07TA07W5N:VYO=VX@("`@(#T@,'AE,"P@+RH@3W5C:"P@
M=&AE('-A;64@87,@1TY57W!U<VA?=&QS7V%D9')E<W,N("`J+PHK("`@($17
M7T]07TA07VES7W9A;'5E("`@(#T@,'AE,2P**R`@("!$5U]/4%](4%]F;'1C
M;VYS=#0@("`](#!X93(L"BL@("`@1%=?3U!?2%!?9FQT8V]N<W0X("`@/2`P
M>&4S+`HK("`@($177T]07TA07VUO9%]R86YG92`@(#T@,'AE-"P**R`@("!$
M5U]/4%](4%]U;FUO9%]R86YG92`](#!X934L"BL@("`@1%=?3U!?2%!?=&QS
M("`@("`@("`@/2`P>&4V"B`@('T["B`*("-D969I;F4@1%=?3U!?;&]?=7-E
M<@DP>&4P"2\J($EM<&QE;65N=&%T:6]N+61E9FEN960@<F%N9V4@<W1A<G0N
M("`J+PI`0"`M-3(R+#<@*S4T-RPQ-B!`0`H@("`@($177T%415]U;G-I9VYE
M9"`](#!X-RP*("`@("!$5U]!5$5?=6YS:6=N961?8VAA<B`](#!X."P*("`@
M("`O*B!$5T%21B`S+B`@*B\*+2`@("!$5U]!5$5?:6UA9VEN87)Y7V9L;V%T
M(#T@,'@Y"BL@("`@1%=?051%7VEM86=I;F%R>5]F;&]A="`](#!X.2P**PHK
M("`@("\J($A0(&5X=&5N<VEO;G,N("`J+PHK("`@($177T%415](4%]F;&]A
M=#@P("`@("`@("`@("`@/2`P>#@P+"`O*B!&;&]A=&EN9RUP;VEN="`H.#`@
M8FET*2X@("HO"BL@("`@1%=?051%7TA07V-O;7!L97A?9FQO870X,"`@("`]
M(#!X.#$L("\J($-O;7!L97@@9FQO871I;F<M<&]I;G0@*#@P(&)I="DN("`J
M+PHK("`@($177T%415](4%]F;&]A=#$R."`@("`@("`@("`@/2`P>#@R+"`O
M*B!&;&]A=&EN9RUP;VEN="`H,3(X(&)I="DN("`J+PHK("`@($177T%415](
M4%]C;VUP;&5X7V9L;V%T,3(X("`@/2`P>#@S+"`O*B!#;VUP;&5X(&9L;V%T
M:6YG+7!O:6YT("@Q,C@@8FET*2X@("HO"BL@("`@1%=?051%7TA07V9L;V%T
M:'!I;G1E;"`@("`@("`](#!X.#0L("\J($9L;V%T:6YG+7!O:6YT("@X,B!B
M:70@24$V-"DN("`J+PHK("`@($177T%415](4%]I;6%G:6YA<GE?9FQO870X
M,"`@/2`P>#@U+`HK("`@($177T%415](4%]I;6%G:6YA<GE?9FQO870Q,C@@
M/2`P>#@V"B`@('T["B`*("-D969I;F4)1%=?051%7VQO7W5S97(@,'@X,`I`
M0"`M-C$Y+#<@*S8U,RPQ."!`0`H@("!["B`@("`@1%=?3$Y%7V5N9%]S97%U
M96YC92`](#$L"B`@("`@1%=?3$Y%7W-E=%]A9&1R97-S(#T@,BP*+2`@("!$
M5U],3D5?9&5F:6YE7V9I;&4@/2`S"BL@("`@1%=?3$Y%7V1E9FEN95]F:6QE
M(#T@,RP**R`@("`O*B!(4"!E>'1E;G-I;VYS+B`@*B\**R`@("!$5U],3D5?
M2%!?;F5G871E7VES7U567W5P9&%T92`@(#T@,'@Q,2P**R`@("!$5U],3D5?
M2%!?<'5S:%]C;VYT97AT("`@("`@("`@(#T@,'@Q,BP**R`@("!$5U],3D5?
M2%!?<&]P7V-O;G1E>'0@("`@("`@("`@(#T@,'@Q,RP**R`@("!$5U],3D5?
M2%!?<V5T7V9I;&5?;&EN95]C;VQU;6X@(#T@,'@Q-"P**R`@("!$5U],3D5?
M2%!?<V5T7W)O=71I;F5?;F%M92`@("`@(#T@,'@Q-2P**R`@("!$5U],3D5?
M2%!?<V5T7W-E<75E;F-E("`@("`@("`@(#T@,'@Q-BP**R`@("!$5U],3D5?
M2%!?;F5G871E7W!O<W1?<V5M86YT:6-S(#T@,'@Q-RP**R`@("!$5U],3D5?
M2%!?;F5G871E7V9U;F-T:6]N7V5X:70@(#T@,'@Q."P**R`@("!$5U],3D5?
M2%!?;F5G871E7V9R;VYT7V5N9%]L;V=I8V%L(#T@,'@Q.2P**R`@("!$5U],
M3D5?2%!?9&5F:6YE7W!R;V,@("`@("`@("`@(#T@,'@R,`H@("!].PH@"B`O
>*B!#86QL(&9R86UE(&EN9F]R;6%T:6]N+B`@*B\*
`
end


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]