Skip to contentSkip to conversation

Evening snapshot of gas patch

parisc-linux Jeff Bailey 1 participant 1 message Oct 23, 2006

lore
Share & tools
lore
#0 lore raw

This version of the patch is not suitable for inclusion, not sending it to the binutils list.

The remaining unaddressed problem (until you guys find more, that is *g*) is that the way I've done the hash table it gets setup once when gas is started. This means that a LEVEL directive comes too late to change the registers table. Nothing brilliant has come to mind yet for a good way to solve this, but I'm back to my work week tomorrow, so hopefully over the next few days something will pop into my head.

2006-10-21 Jeff Bailey <[email protected]>

* config/tc-hppa.c: Do not define DEFAULT_LEVEL.
Add variables for architecture size.
Add mach member to struct pd_reg and populate pre_defined_registers. (need_pa11_opcode): Use bfd_mach_hppa11 instead of pa11 for consistency.
(need_pa11_opcode): Use defines from bfd.h instead of magic numbers. (pa_ip): Likewise.
(pa_level): Likewise.
(pa_parse_number): Use binutils hash instead of home-brew one. (md_begin): Use defines from bfd.h instead of DEFAULT_LEVEL. (init_default_arch): New function.
(hppa_target_format): New function. (hppa_print_statistics): New function. (reg_name_search): Removed.
(setup_reg_hash): New function.

* config/tc-hppa.h: Redefine TARGET_FORMAT as hppa_target_format() and in terms of ELF_TARGET_FORMAT and ELF64_TARGET_FORMAT for OBJ_ELF. Remove extra definitions of TRUE and FALSE.
Use elf64-hppa for 64 bit NetBSD.

* configure.in: Define DEFAULT_ARCH for hppa.
* configure.tgt: Specify arch for hppa and hppa64.

--
Jeff Bailey - http://www.raspberryginger.com/jbailey/

Index: configure.in
===================================================================
RCS file: /cvs/src/src/gas/configure.in,v
retrieving revision 1.194

configure.in +1 -1
diff -u -p -r1.194 configure.in
@@ -325,7 +325,7 @@ changequote([,])dnl
         using_cgen=yes
 	;;
 
-      i386 | s390 | sparc)
+      i386 | s390 | sparc | hppa)
 	if test $this_target = $target ; then
 	  AC_DEFINE_UNQUOTED(DEFAULT_ARCH, "${arch}", [Default architecture.])
 	fi

Index: configure.tgt
===================================================================
RCS file: /cvs/src/src/gas/configure.tgt,v
retrieving revision 1.29

configure.tgt +2 -1
diff -u -p -r1.29 configure.tgt
@@ -37,7 +37,8 @@ case ${cpu} in
   c4x*)			cpu_type=tic4x ;;
   crisv32)		cpu_type=cris arch=crisv32 ;;
   crx*)			cpu_type=crx endian=little ;;
-  hppa*)		cpu_type=hppa ;;
+  hppa)			cpu_type=hppa arch=hppa;;
+  hppa64)		cpu_type=hppa arch=hppa64;;
   i[3-7]86)		cpu_type=i386 arch=i386;;
   ia64)			cpu_type=ia64 ;;
   ip2k)			cpu_type=ip2k endian=big ;; 

Index: config/tc-hppa.c
===================================================================
RCS file: /cvs/src/src/gas/config/tc-hppa.c,v
retrieving revision 1.132

tc-hppa.c +331 -270

714 lines not on this page · raw message

Index: config/tc-hppa.h
===================================================================
RCS file: /cvs/src/src/gas/config/tc-hppa.h,v
retrieving revision 1.31

tc-hppa.h +31 -27

75 lines not on this page · raw message

_______________________________________________
parisc-linux mailing list
[email protected]
http://lists.parisc-linux.org/mailman/listinfo/parisc-linux