diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5a8a09e8b1958c149755b831a132378de3495a3e..c5419232d7b24dafd0232c5ac55463f453d02b2b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+2004-05-25  Svein E. Seldal  <Svein.Seldal@solidas.com>
+
+	* config/avr/avr.h (LONG_LONG_TYPE_SIZE): Changed long long type
+	to support 32-bit -mint8 mode.
+
+	* doc/invoke.texi (-mint8): Added documentation for the -mint8
+	option in the AVR architecture. 
+
 2004-05-24  Mike Stump  <mrs@apple.com>
 
 	* doc/install.texi: Document that dejagnu 1.4.4 is required.
diff --git a/gcc/config/avr/avr.h b/gcc/config/avr/avr.h
index 6361fbd90348a33b775772d2e38e125cb773f66b..c9beb30410f220dbac87b45ecff80daa4bb0dd24 100644
--- a/gcc/config/avr/avr.h
+++ b/gcc/config/avr/avr.h
@@ -142,7 +142,7 @@ extern int avr_asm_only_p;
 #define INT_TYPE_SIZE (TARGET_INT8 ? 8 : 16)
 #define SHORT_TYPE_SIZE (INT_TYPE_SIZE == 8 ? INT_TYPE_SIZE : 16)
 #define LONG_TYPE_SIZE (INT_TYPE_SIZE == 8 ? 16 : 32)
-#define LONG_LONG_TYPE_SIZE 64
+#define LONG_LONG_TYPE_SIZE (INT_TYPE_SIZE == 8 ? 32 : 64)
 #define FLOAT_TYPE_SIZE 32
 #define DOUBLE_TYPE_SIZE 32
 #define LONG_DOUBLE_TYPE_SIZE 32
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 1ed9e6588f47c0c37ee4b771bc09c69f65f48219..b2ae83c6f5d6706c4f1c9fce230d967efe6e9c9e 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -592,7 +592,7 @@ in the following sections.
 
 @emph{AVR Options}
 @gccoptlist{-mmcu=@var{mcu}  -msize  -minit-stack=@var{n}  -mno-interrupts @gol
--mcall-prologues  -mno-tablejump  -mtiny-stack}
+-mcall-prologues  -mno-tablejump  -mtiny-stack  -mint8}
 
 @emph{MCore Options}
 @gccoptlist{-mhardlit  -mno-hardlit  -mdiv  -mno-div  -mrelax-immediates @gol
@@ -10184,6 +10184,14 @@ Do not generate tablejump insns which sometimes increase code size.
 @item -mtiny-stack
 @opindex mtiny-stack
 Change only the low 8 bits of the stack pointer.
+
+@item -mint8
+@opindex mint8
+Assume int to be 8 bit integer. This affects the sizes of all types: A
+char will be 1 byte, an int will be 1 byte, an long will be 2 bytes
+and long long will be 4 bytes. Please note that this option does not
+comply to the C standards, but it will provide you with smaller code
+size.
 @end table
 
 @node MCore Options