Final (hopefully) try to fix the TLS issue. Investigation showed that 1. Both .tdata and .tbss can be present and absent. 2. LD will calculate size of LTS area as rounded size of .tdata + rounded size of .tbss 3. We can not use different algorythm or else things will break apart. 4. Thus we make both segments 0x20-aligned and place them on 0x20 boundary.
Final (hopefully) try to fix the TLS issue. Investigation showed that
1. Both .tdata and .tbss can be present and absent.
2. LD will calculate size of LTS area as rounded size of .tdata + rounded size of .tbss
3. We can not use different algorythm or else things will break apart.
4. Thus we make both segments 0x20-aligned and place them on 0x20 boundary.

This fixes problems with GCC 4.2.2, GCC 4.4.2 and makes it possible to use
SSE2 for fast initialization of TLS in the future (not included in this CL).

Review URL: http://codereview.chromium.org/434123

git-svn-id: 721b910a23eff8a86f00c8fd261a7587cddf18f8@1047 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

nacl-webkit/native_client,nacl-webkit/native_client,sbc100/native_client,sbc100/native_client,sbc100/native_client,sbc100/native_client,nacl-webkit/native_client,nacl-webkit/native_client,sbc100/native_client,nacl-webkit/native_client,sbc100/native_client