ARC/ld: Remove the unused .stack/.heap sections from linker script

These sections are not used by uClibc/kernel for heap/stack management.
Also they add about 0x1_0000 and 0x5000 of vaddr to each dso mapped
which remins unused and wasted.

for smaller libraries - .bss could fold into data segment - thus having
only 2 VMAs in the end as opposed to current 3.

What this change does to ARC dynamic executables/DSOs:
------------------------------------------------------

Before

[ARCLinux]$ cat /proc/45/maps
00010000-000be000 r-xp 00000000 00:01 281   /bin/busybox_dyn
000be000-000c2000 rw-p 000ac000 00:01 281   /bin/busybox_dyn
000c2000-000de000 rw-p 00000000 00:00 0     [heap]
20000000-20002000 rw-p 00000000 00:00 0
2f0f0000-2f0f6000 r-xp 00000000 00:01 109   /lib/ld-uClibc-0.9.30.3.so
2f0f6000-2f0f8000 rw-p 00004000 00:01 109   /lib/ld-uClibc-0.9.30.3.so
2f0f8000-2f10c000 rw-p 00000000 00:00 0
2f10c000-2f11a000 r-xp 00000000 00:01 112   /lib/libm-0.9.30.3.so
2f11a000-2f11c000 rw-p 0000c000 00:01 112   /lib/libm-0.9.30.3.so
2f11c000-2f132000 rw-p 00000000 00:00 0
2f132000-2f1a2000 r-xp 00000000 00:01 101   /lib/libuClibc-0.9.30.3.so
2f1a2000-2f1a4000 rw-p 0006e000 00:01 101   /lib/libuClibc-0.9.30.3.so
2f1a4000-2f1be000 rw-p 00000000 00:00 0
5f9cc000-5f9ee000 rw-p 00000000 00:00 0     [stack]

After

[ARCLinux]$ cat /proc/45/maps
00010000-000be000 r-xp 00000000 00:01 281   /bin/busybox_dyn
000be000-000c0000 rw-p 000ae000 00:01 281   /bin/busybox_dyn
000c0000-000c6000 rw-p 00000000 00:00 0     [heap]
20000000-20002000 rw-p 00000000 00:00 0
2f0f0000-2f0f6000 r-xp 00000000 00:01 109   /lib/ld-uClibc-0.9.30.3.so
2f0f6000-2f0f8000 rw-p 00004000 00:01 109   /lib/ld-uClibc-0.9.30.3.so
2f0f8000-2f106000 r-xp 00000000 00:01 112   /lib/libm-0.9.30.3.so
2f106000-2f108000 rw-p 0000c000 00:01 112   /lib/libm-0.9.30.3.so
2f108000-2f178000 r-xp 00000000 00:01 101   /lib/libuClibc-0.9.30.3.so
2f178000-2f17a000 rw-p 00070000 00:01 101   /lib/libuClibc-0.9.30.3.so
2f17a000-2f17e000 rw-p 00000000 00:00 0
5fdfa000-5fe1c000 rw-p 00000000 00:00 0     [stack]

2012-11-26  Vineet Gupta <vgupta@synopsys.com>

	* scripttempl/arclinux.sc: Remove unused .heap/.stack sections

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
ARC/ld: Enable generation of DATA_SEGMENT_ALIGN builtin in linker script

This enables ld to possibly optimize for 1 lesser runtime page - based
on on-disk layout of code/data segments in elf (this first came to light
when I was enabling of 16k MMU pages in ARC700 in userland)

http://www.sourceware.org/ml/binutils/2002-02/msg00265.html

Although the current linker script template had option to generate this,
it was not getting hit due to missing COMMONPAGESIZE defintion.

What this change does to ARC dynamic executables/DSOs:
------------------------------------------------------
arc-linux-uclibc-readelf -l arc_initramfs/lib/libuClibc-0.9.30.3.so

Before
  LOAD  0x000000 0x00000000 0x00000000 0x6e650 0x6e650 R E 0x1000
  LOAD  0x06e650 0x00070650 0x00070650 0x007b4 0x5c28  RW  0x1000

After
  LOAD  0x000000 0x00000000 0x00000000 0x6e5a0 0x6e5a0 R E 0x2000
  LOAD  0x070000 0x00070000 0x00070000 0x007b4 0x05c28 RW  0x2000
          ^^^^^    ^^^^^

If you do the math, per above URL, indeed one 1 runtime page is saved
with no additional disk page.

2012-11-26  Vineet Gupta <vgupta@synopsys.com>

	* emulparams/arclinux.sh: Define COMMONPAGESIZE as 8k which
	enables generation of DATA_SEGMENT_ALIGN in linker scripts.
	* emulparams/arclinux_prof.sh: likewise

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>