* config/darwin9.h (ASM_OUTPUT_ALIGNED_COMMON): Add.
* config/darwin.h (MAX_OFILE_ALIGNMENT): Fix.
testsuite:
* gcc.dg/darwin-comm.c: Add.
From-SVN: r123321
+2007-03-28 Mike Stump <mrs@apple.com>
+
+ * config/darwin9.h (ASM_OUTPUT_ALIGNED_COMMON): Add.
+ * config/darwin.h (MAX_OFILE_ALIGNMENT): Fix.
+
2007-03-28 Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
* config.gcc: Accept barcelona as a variant of amdfam10.
} \
} while (0)
-/* The maximum alignment which the object file format can support.
- For Mach-O, this is 2^15. */
+/* The maximum alignment which the object file format can support in
+ bits. For Mach-O, this is 2^15 bytes. */
#undef MAX_OFILE_ALIGNMENT
-#define MAX_OFILE_ALIGNMENT 0x8000
+#define MAX_OFILE_ALIGNMENT (0x8000 * 8)
/* Declare the section variables. */
#ifndef USED_FOR_TARGET
/* The linker can generate branch islands. */
#define DARWIN_LINKER_GENERATES_ISLANDS 1
+
+#undef ASM_OUTPUT_ALIGNED_COMMON
+#define ASM_OUTPUT_ALIGNED_COMMON(FILE, NAME, SIZE, ALIGN) \
+ do { \
+ unsigned HOST_WIDE_INT _new_size = SIZE; \
+ fprintf ((FILE), ".comm "); \
+ assemble_name ((FILE), (NAME)); \
+ if (_new_size == 0) _new_size = 1; \
+ fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED",%u\n", \
+ (SIZE), floor_log2 ((ALIGN) / BITS_PER_UNIT)); \
+ } while (0)
+2007-03-28 Mike Stump <mrs@apple.com>
+
+ * gcc.dg/darwin-comm.c: Add.
+
2007-03-28 Eric Christopher <echristo@apple.com>
* lib/target-supports.exp (check_effective_target_fstack_protector): New.
--- /dev/null
+/* { dg-do compile { target *-*-darwin9* } } */
+/* { dg-final { scan-assembler ".comm _foo,1,15" } } */
+
+char foo __attribute__ ((aligned(32768)));