diff options
author | David Edelsohn <edelsohn@gnu.org> | 2004-01-12 04:47:58 +0000 |
---|---|---|
committer | David Edelsohn <dje@gcc.gnu.org> | 2004-01-11 23:47:58 -0500 |
commit | 5fc921c1988d36782361ade21f30e7da0ad2ba0c (patch) | |
tree | 173c4631c403f760270ddf077578bd5a2af222b1 | |
parent | 48568ec72b76246c3cf964b52fbe91fa018511e7 (diff) | |
download | gcc-5fc921c1988d36782361ade21f30e7da0ad2ba0c.zip gcc-5fc921c1988d36782361ade21f30e7da0ad2ba0c.tar.gz gcc-5fc921c1988d36782361ade21f30e7da0ad2ba0c.tar.bz2 |
re PR target/13401 (Traceback table does not conform to PowerPC 64 ABI)
PR target/13401
* config/rs6000/rs6000.c (rs6000_output_function_epilogue):
Objective-C language type value is 14.
From-SVN: r75704
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 19 |
2 files changed, 16 insertions, 9 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a79c36e..b08d87c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2004-01-12 David Edelsohn <edelsohn@gnu.org> + + PR target/13401 + * config/rs6000/rs6000.c (rs6000_output_function_epilogue): + Objective-C language type value is 14. + 2004-01-12 Markus F.X.J. Oberhumer <markus@oberhumer.com> PR c/12148 diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 3887462..d485a5e 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -12523,24 +12523,25 @@ rs6000_output_function_epilogue (FILE *file, /* Tbtab format type. Use format type 0. */ fputs ("\t.byte 0,", file); - /* Language type. Unfortunately, there doesn't seem to be any - official way to get this info, so we use language_string. C - is 0. C++ is 9. No number defined for Obj-C, so use the - value for C for now. There is no official value for Java, - although IBM appears to be using 13. */ - if (! strcmp (language_string, "GNU C") - || ! strcmp (language_string, "GNU Objective-C")) + /* Language type. Unfortunately, there does not seem to be any + official way to discover the language being compiled, so we + use language_string. + C is 0. Fortran is 1. Pascal is 2. Ada is 3. C++ is 9. + Java is 13. Objective-C is 14. */ + if (! strcmp (language_string, "GNU C")) i = 0; else if (! strcmp (language_string, "GNU F77")) i = 1; - else if (! strcmp (language_string, "GNU Ada")) - i = 3; else if (! strcmp (language_string, "GNU Pascal")) i = 2; + else if (! strcmp (language_string, "GNU Ada")) + i = 3; else if (! strcmp (language_string, "GNU C++")) i = 9; else if (! strcmp (language_string, "GNU Java")) i = 13; + else if (! strcmp (language_string, "GNU Objective-C")) + i = 14; else abort (); fprintf (file, "%d,", i); |