English fixes to docs/smallint.txt
authorDenys Vlasenko <vda.linux@googlemail.com>
Sun, 24 Oct 2010 01:23:59 +0000 (03:23 +0200)
committerDenys Vlasenko <vda.linux@googlemail.com>
Sun, 24 Oct 2010 01:23:59 +0000 (03:23 +0200)
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
docs/smallint.txt

index df67964..b57dfd7 100644 (file)
@@ -8,14 +8,15 @@
 
 I think that this optimization is wrong.
 index_in_str_array returns int. At best, compiler will use it as-is.
-At worst, compiler will try to make sure that it is properly casted
+At worst, compiler will try to make sure that it is properly cast
 into a byte, which probably results in "n = n & 0xff" on many architectures.
 
 You save nothing on space here because i is not stored on-stack,
-gcc will keep it in register. And even it is *is* stored,
+gcc will keep it in register. And even if it *is* stored,
 it is *stack* storage, which is cheap (unlike data/bss).
 
 small[u]ints are useful _mostly_ for:
+
 (a) flag variables
     (a1) global flag variables - make data/bss smaller
     (a2) local flag variables - "a = 5", "a |= 0x40" are smaller
@@ -26,10 +27,11 @@ small[u]ints are useful _mostly_ for:
             movl $0x0,(%eax) is "c7 00 00 00 00 00"
             movb $0x0,(%eax) is "c6 00 00"
 (b) small integer structure members, when you have many such
-structures allocated,
+    structures allocated,
     or when these are global objects of this structure type
 
 small[u]ints are *NOT* useful for:
+
 (a) function parameters and return values -
     they are pushed on-stack or stored in registers, bytes here are *harder*
     to deal with than ints