From b71733d53f2233503a132a6892a13d91f1a2e361 Mon Sep 17 00:00:00 2001 From: Greg McGary Date: Fri, 19 Nov 1999 00:23:01 +0000 Subject: [PATCH] m68kelf.h: Suppress '/* within comment' warning. * config/m68k/m68kelf.h: Suppress '/* within comment' warning. * config/m68k/m68k.h (MASK_PCREL): Don't use same value as MASK_ALIGN_INT. * config/m68k/m68k.h (MASK_NO_STRICT_ALIGNMENT): New macro. (TARGET_STRICT_ALIGNMENT): New macro. (TARGET_SWITCHES): Add "strict-align" and "no-strict-align". (STRICT_ALIGNMENT): Depend on TARGET_STRICT_ALIGNMENT. * invoke.texi (M680x0 Options): Document -mstrict-align. Co-Authored-By: Geoff Keating From-SVN: r30579 --- gcc/ChangeLog | 14 ++++++++++++++ gcc/config/m68k/m68k.h | 10 ++++++++-- gcc/config/m68k/m68kelf.h | 2 +- gcc/invoke.texi | 8 +++++++- 4 files changed, 30 insertions(+), 4 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 66758cd51e3..f5f41250dd1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,17 @@ +Fri Nov 19 11:11:55 1999 Greg McGary + Geoffrey Keating + + * config/m68k/m68kelf.h: Suppress '/* within comment' warning. + + * config/m68k/m68k.h (MASK_PCREL): Don't use same value as + MASK_ALIGN_INT. + + * config/m68k/m68k.h (MASK_NO_STRICT_ALIGNMENT): New macro. + (TARGET_STRICT_ALIGNMENT): New macro. + (TARGET_SWITCHES): Add "strict-align" and "no-strict-align". + (STRICT_ALIGNMENT): Depend on TARGET_STRICT_ALIGNMENT. + * invoke.texi (M680x0 Options): Document -mstrict-align. + Thu Nov 18 11:10:03 1999 Jan Hubicka Richard Henderson diff --git a/gcc/config/m68k/m68k.h b/gcc/config/m68k/m68k.h index 72c65b65e71..62fd7595472 100644 --- a/gcc/config/m68k/m68k.h +++ b/gcc/config/m68k/m68k.h @@ -132,9 +132,13 @@ extern int target_flags; treated as all containing an implicit PC-relative component, and hence cannot be used directly as addresses for memory writes. See the comments in m68k.c for more information. */ -#define MASK_PCREL 4096 +#define MASK_PCREL 8192 #define TARGET_PCREL (target_flags & MASK_PCREL) +/* Relax strict alignment. */ +#define MASK_NO_STRICT_ALIGNMENT 16384 +#define TARGET_STRICT_ALIGNMENT (~target_flags & MASK_NO_STRICT_ALIGNMENT) + /* Macro to define tables used to set the flags. This is a list in braces of pairs in braces, each pair being { "NAME", VALUE } @@ -194,6 +198,8 @@ extern int target_flags; { "align-int", MASK_ALIGN_INT }, \ { "no-align-int", -MASK_ALIGN_INT }, \ { "pcrel", MASK_PCREL}, \ + { "strict-align", -MASK_NO_STRICT_ALIGNMENT}, \ + { "no-strict-align", MASK_NO_STRICT_ALIGNMENT}, \ SUBTARGET_SWITCHES \ { "", TARGET_DEFAULT}} /* TARGET_DEFAULT is defined in sun*.h and isi.h, etc. */ @@ -304,7 +310,7 @@ extern int target_flags; /* Set this nonzero if move instructions will actually fail to work when given unaligned data. */ -#define STRICT_ALIGNMENT 1 +#define STRICT_ALIGNMENT (TARGET_STRICT_ALIGNMENT) /* Maximum power of 2 that code can be aligned to. */ #define MAX_CODE_ALIGN 2 /* 4 byte alignment */ diff --git a/gcc/config/m68k/m68kelf.h b/gcc/config/m68k/m68kelf.h index b9cf3888675..7ac21b6ba4a 100644 --- a/gcc/config/m68k/m68kelf.h +++ b/gcc/config/m68k/m68kelf.h @@ -22,7 +22,7 @@ along with GNU CC; see the file COPYING. If not, write to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* #notinclude "m68k/sgs.h" /* The m68k/SVR4 assembler is SGS based */ +/* #notinclude "m68k/sgs.h" / * The m68k/SVR4 assembler is SGS based */ /* These are necessary for -fpic/-fPIC to work correctly. */ #ifndef MOTOROLA diff --git a/gcc/invoke.texi b/gcc/invoke.texi index 7b7a088202a..1784fb94c20 100644 --- a/gcc/invoke.texi +++ b/gcc/invoke.texi @@ -221,7 +221,7 @@ in the following sections. -m68000 -m68020 -m68020-40 -m68020-60 -m68030 -m68040 -m68060 -mcpu32 -m5200 -m68881 -mbitfield -mc68000 -mc68020 -mfpa -mnobitfield -mrtd -mshort -msoft-float -mpcrel --malign-int +-malign-int -mstrict-align @emph{VAX Options} -mg -mgnu -munix @@ -3831,6 +3831,12 @@ allowing at most a 16-bit offset for pc-relative addressing. -fPIC is not presently supported with -mpcrel, though this could be supported for 68020 and higher processors. +@item -mno-strict-align +@itemx -mstrict-align +@kindex -mstrict-align +Do not (do) assume that unaligned memory references will be handled by +the system. + @end table @node VAX Options