Start work on 64bit port
64bit: Replace hard-coded FB_ARRAYDESC_DATAOFFS with pre-calculated global
64bit: FB_ARRAYDESCLEN: ditto
Move ctx.array_dimtype into main symb context, rename the others to match
STABS emitter: Replace use of hard-coded array descriptor offsets

... and instead, use symbGetOfs() and symbGetLen() on the
symb.array_desctype and symb.array_dimtype structures and their fields.
Let symbAddField() derive the field's length automatically where possible

(this gets rid of some references to the hard-coded FB_POINTERSIZE etc.)
64bit: FB_ARRAYDESC_DIMLEN: ditto
64bit: FB_ARRAYDESC_LBOUNDOFS and FB_ARRAYDESC_UBOUNDOFS: ditto
64bit: Solve out last reference to the hard-coded FB_ARRAYDESCDIM
Rename the new symb.* globals again, to match the rtlib type names
ASM backend: Replace dtypeTB() size field by using typeGetSize() instead
ASM backend: Remove unused "class" field from dtypeTB()
ir-tac: Replace direct access to symb_dtypeTB() with typeGetClass()
frontend: Recognize -target win64|linux64 and also x86_64-*-* triplets

The 64bit port should use separate targets, so that we can have lib/win32/
containing the 32bit libs, while at the same time lib/win64/ has the 64bit
libs, that allows cross-compiling between the 32bit and 64bit versions.

-arch probably shouldn't be used to choose 64bit mode, because it selects
a specific arch for code generation, but does not affect the pre-compiled
libs at all. So then it makes more sense to just do "-target win64"
instead of "-target win32 -arch x86_64".
Merge branch 'master' into 64bit
Add FB_TARGETOPT_64BIT flag to mark 64bit targets
Remove symb_dtypeTB's bits field, calculate based on typeGetSize() instead

There's no point in pre-calculating this, typeGetBits() is rarely used
and the operation is just a *8 that will be optimized to a shift.
Plus, this frees up 25*4 bytes of memory, and removes some references to
the hard-coded FB_{LONG/INTEGER/POINTER}SIZE constants.
64bit: Set data type sizes based on target, during symbInit()

In order to support compiling for 32bit and 64bit from the same fbc,
the type sizes must be set at runtime instead of being hard-coded.

Care must be taken now to not use typeGetSize() before symbInit()...
frontend: Recognize win64/linux64 (really this time), not just x86_64-*-*
Default to -gen gcc and refuse -gen gas for 64bit targets