diff options
author | Nicola Pero <nicola.pero@meta-innovation.com> | 2011-02-19 01:54:03 +0000 |
---|---|---|
committer | Nicola Pero <nicola@gcc.gnu.org> | 2011-02-19 01:54:03 +0000 |
commit | 6da97b7be46db2e3e27d3817b51833366360e7c2 (patch) | |
tree | 583657cc6f5a625a0fd5f92441494621a69f2c90 | |
parent | d4c433f96c2a31f5bd15dc710f8ce3ff14e54699 (diff) | |
download | gcc-6da97b7be46db2e3e27d3817b51833366360e7c2.zip gcc-6da97b7be46db2e3e27d3817b51833366360e7c2.tar.gz gcc-6da97b7be46db2e3e27d3817b51833366360e7c2.tar.bz2 |
Updated comments in objc-act.c
From-SVN: r170299
-rw-r--r-- | gcc/objc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/objc/objc-act.c | 23 |
2 files changed, 25 insertions, 3 deletions
diff --git a/gcc/objc/ChangeLog b/gcc/objc/ChangeLog index 8e76292..799cd40 100644 --- a/gcc/objc/ChangeLog +++ b/gcc/objc/ChangeLog @@ -1,5 +1,10 @@ 2011-01-19 Nicola Pero <nicola.pero@meta-innovation.com> + * objc-act.c (objc_init, generate_struct_by_value_array): Updated + comments. + +2011-01-19 Nicola Pero <nicola.pero@meta-innovation.com> + * objc-act.c: Updated comments. * objc-next-runtime-abi-02.c: Same. * objc-runtime-shared-support.c: Same. diff --git a/gcc/objc/objc-act.c b/gcc/objc/objc-act.c index 0e32c23..7a32921 100644 --- a/gcc/objc/objc-act.c +++ b/gcc/objc/objc-act.c @@ -330,8 +330,9 @@ generate_struct_by_value_array (void) int aggregate_in_mem[32]; int found = 0; - /* ??? as an example, m64/ppc/Darwin can pass up to 8*long+13*double in regs. - Presumably no platform passes 32 byte structures in a register. */ + /* Presumably no platform passes 32 byte structures in a register. */ + /* ??? As an example, m64/ppc/Darwin can pass up to 8*long+13*double + in registers. */ for (i = 1; i < 32; i++) { char buffer[5]; @@ -379,8 +380,24 @@ objc_init (void) #endif return false; + /* print_struct_values is triggered by -print-runtime-info (used + when building libobjc, with an empty file as input). It does not + require any ObjC setup, and it never returns. + + -fcompare-debug is used to check the compiler output; we are + executed twice, once with flag_compare_debug set, and once with + it not set. If the flag is used together with + -print-runtime-info, we want to print the runtime info only once, + else it would be output in duplicate. So we check + flag_compare_debug to output it in only one of the invocations. + + As a side effect, this also that means -fcompare-debug + -print-runtime-info will run the compiler twice, and compare the + generated assembler file; the first time the compiler exits + immediately (producing no file), and the second time it compiles + an empty file. This checks, as a side effect, that compiling an + empty file produces no assembler output. */ if (print_struct_values && !flag_compare_debug) - /* This routine does not require any ObjC set-up and never returns. */ generate_struct_by_value_array (); /* Set up stuff used by FE parser and all runtimes. */ |