Commit Graph

45695 Commits

Author SHA1 Message Date
nickysn
9d8f0493cd * support 4 pages (instead of 3) in the 640x200 EGA mode in the msdos graph unit as well
git-svn-id: trunk@30285 -
2015-03-22 23:05:40 +00:00
nickysn
20033d1af2 * emulate 4 pages (instead of 3) in the 640x200x16 colors mode
git-svn-id: trunk@30284 -
2015-03-22 22:35:47 +00:00
nickysn
317c1b32cf * updated VGA/VGALo to 4 pages as well, as it is the same mode as EGA/EGALo
git-svn-id: trunk@30283 -
2015-03-22 22:34:34 +00:00
nickysn
c2628e9917 * support 4 pages instead of 3 in the 640x200 EGA mode
git-svn-id: trunk@30282 -
2015-03-22 22:15:40 +00:00
nickysn
3d8c941c6c * updated go32v2 graph unit video card detection code with the latest code from the msdos graph unit (which supports detection of EGAMono, MCGA and combinations of two video cards)
git-svn-id: trunk@30281 -
2015-03-22 21:35:28 +00:00
florian
2fdc4f06de * few 64 Bit related fixes, the type change of chtype resolves #27024
git-svn-id: trunk@30280 -
2015-03-22 20:15:59 +00:00
marco
076e43f799 * try to beautify image_delayload_descriptor a bit. But a 1:1 structure
is not possible I think (unless we forfeit the bitpack alternative)

git-svn-id: trunk@30279 -
2015-03-22 19:54:53 +00:00
Károly Balogh
87deec105d m68k: implemented 68k specific a_bit_set_const_ref and a_bit_set_reg_ref, using BSET/BCLR
git-svn-id: trunk@30278 -
2015-03-22 17:44:59 +00:00
nickysn
069fa51445 * use separate input and output files when invoking wlib to create a static
library. This resolves a problem with parallel building of a i8086 cross
  compiler, due to a race condition in wlib, when running several instances of
  wlib in the same directory. The problem is in the way wlib creates a temp file
  in the current directory using non-atomic operations and with a high
  probability of a name collision. Using separate input and output files avoids
  this temp file creation by wlib.

git-svn-id: trunk@30277 -
2015-03-22 17:42:19 +00:00
Jeppe Johansen
fa5bd1c513 ARMv7M supports UMULL.
Fix missing conflicts for multiplication instructions for >=ARMv6.

git-svn-id: trunk@30276 -
2015-03-22 14:39:43 +00:00
Károly Balogh
c49c8210a3 m68k: some initial HLCG, use BSET/BCLR instructions for simple bit manipulation
git-svn-id: trunk@30275 -
2015-03-22 14:01:14 +00:00
Jeppe Johansen
f7526d0d36 Add classes and stub thread support in the embedded rtl.
git-svn-id: trunk@30274 -
2015-03-22 13:55:20 +00:00
Jeppe Johansen
3ef4033e7d Test the proper CPUARM capability when chosing between blx and bl.
git-svn-id: trunk@30273 -
2015-03-22 13:42:28 +00:00
florian
5f4dc5e54f * parentheses after an @-operator can contain a full expression, resolves #27517
git-svn-id: trunk@30272 -
2015-03-22 13:00:43 +00:00
florian
3396e2e1f4 * interpret -daaa:=bbb after -Sm was passed as a macro definition, resolves #27529
git-svn-id: trunk@30271 -
2015-03-22 10:20:37 +00:00
florian
36e79a874e * when creating code for an iso mod operator, use create_internal for the helper nodes
to avoid unnecessary warnings

git-svn-id: trunk@30270 -
2015-03-21 22:57:19 +00:00
florian
a8e001d4ad * do not warn about disjunct ranges for internally created cmp nodes
git-svn-id: trunk@30269 -
2015-03-21 22:56:30 +00:00
florian
0bc63c438e + tifnode.create_internal
git-svn-id: trunk@30268 -
2015-03-21 22:55:35 +00:00
Károly Balogh
ad301f8fa1 m68k: implemented t68kvecnode.update_reference_reg_packed. same as the generic one, but allocates int registers instead of address registers, because on 68k IMUL,SHR/SHL and AND can't work on address registers, which results in a lot of register shuffling
git-svn-id: trunk@30267 -
2015-03-21 20:09:35 +00:00
Jeppe Johansen
5ca1740bee Fix issue in is_thumb32_imm. imm<11:10> have to be non-zero meaning the rotate only works from 8 to 31. Caused 0x8000001F to be mistaken for a valid immediate.
git-svn-id: trunk@30266 -
2015-03-21 12:46:45 +00:00
Jonas Maebe
39594adae1 * different, simpler fix for #27691 fixed in r30261; should fix the
internalerrors on some platforms after that revision

git-svn-id: trunk@30265 -
2015-03-20 14:23:28 +00:00
marco
57212decc8 * ugly auto conversion IMAGE_IMPORT_DESCRIPTOR and _IMAGE_TLS_DIRECTORY64/32 fixed.
* IMAGE_EXPORT_DIRECTORY

(see comments mantis #27674 )

git-svn-id: trunk@30264 -
2015-03-20 14:01:28 +00:00
nickysn
50fd91b3e1 * micro optimization in the putpixel routines of the msdos graph unit: perform
clipping before switching to global coordinates, as the comparisons are
  then simpler

git-svn-id: trunk@30263 -
2015-03-20 10:50:01 +00:00
nickysn
a5a61243b8 * updated video card detection code in the msdos graph unit to support EGA mono,
MCGA and added support for detection of combinations of video cards (i.e. dual
  head configurations with a color and a monochrome video card)

git-svn-id: trunk@30262 -
2015-03-20 00:24:10 +00:00
Jonas Maebe
ea3a306da8 * never say that an automatically added unit is unused (mantis #27691)
git-svn-id: trunk@30261 -
2015-03-19 17:48:57 +00:00
michael
636fb64577 * Introduce reload method
git-svn-id: trunk@30260 -
2015-03-19 15:09:27 +00:00
marco
1ea195aefe * remove 2nd copyright header, reverting to original one. Mantis #27630
git-svn-id: trunk@30258 -
2015-03-18 09:28:19 +00:00
Károly Balogh
258b42de26 m68k: added support for FSIN/FCOS. these are software supported on the 68040, so we should have a separate 68040/060 FPU option too, to avoid these in the future.
git-svn-id: trunk@30257 -
2015-03-17 22:52:53 +00:00
marco
882d42eb86 * change image_* macros to unsigned, half of bug #27674
git-svn-id: trunk@30256 -
2015-03-17 22:30:31 +00:00
Jeppe Johansen
09acd9b1ab Add workaround for ARM thumb when using GAS.
git-svn-id: trunk@30254 -
2015-03-17 21:24:07 +00:00
marco
9255bc0fe5 * added _ before avr in cpusuffix. All other targets have.
Due to remark of "ghieber" on forum.

git-svn-id: trunk@30250 -
2015-03-17 09:09:14 +00:00
nickysn
be2937bb17 + VESA banked 32k/64k colour mode fast line drawing for msdos as well
git-svn-id: trunk@30249 -
2015-03-17 02:37:48 +00:00
nickysn
84f5184911 * micro optimization in a commonly repeated VESA horizontal line drawing code pattern
git-svn-id: trunk@30248 -
2015-03-17 00:54:25 +00:00
nickysn
529f1e77db * fixed spelling: allign -> align
git-svn-id: trunk@30247 -
2015-03-17 00:45:08 +00:00
nickysn
69d839e891 + implemented VESA banked 32k/64k colour mode fast line drawing in the go32v2 graph unit
git-svn-id: trunk@30246 -
2015-03-17 00:13:58 +00:00
Károly Balogh
b617345e43 m68k: disabled premature MOVEA #0,Ax to SUBA Ax,Ax in the CG, because it breaks with spilling temp replacement and moved it to the optimizer, where it belongs. this fixes some code with potentially heavy address register pressure, like the IDE.
git-svn-id: trunk@30245 -
2015-03-16 02:04:58 +00:00
Jonas Maebe
765044aede * fixed a number of (mostly false) warnings regarding uninitialised
variables with -Oodfa

git-svn-id: branches/hlcgllvm@30244 -
2015-03-15 21:10:50 +00:00
Jonas Maebe
bc7ba58798 * fixed compilation after removal of ait_set, ait_thumb_set and ait_symbol_pair
git-svn-id: branches/hlcgllvm@30243 -
2015-03-15 21:10:47 +00:00
florian
f6f8e1b83e * write ppu+source file name in case the source file is not available instead of inserting an invalid absolute path, resolves #27588
git-svn-id: trunk@30242 -
2015-03-15 19:51:17 +00:00
Jonas Maebe
bd203a5b57 * synchronised with trunk till r30240
git-svn-id: branches/hlcgllvm@30241 -
2015-03-15 19:44:58 +00:00
florian
f07969245b * fix warning about uninitialized variable
git-svn-id: trunk@30240 -
2015-03-15 17:10:01 +00:00
florian
331ace25c6 * handle undefineddef in classify_argument, resolves #27658
git-svn-id: trunk@30239 -
2015-03-15 16:19:58 +00:00
Jeppe Johansen
60f24739fc Fixed typo
git-svn-id: trunk@30238 -
2015-03-15 15:47:45 +00:00
florian
38a72f2ddb * renamed arm->avr to match the cpu
git-svn-id: trunk@30237 -
2015-03-15 15:10:37 +00:00
Jonas Maebe
f633d094ee * perform interface dispatches via R12 instead of R11 as expected for
indirect function calls for ELFv2 (and other ABIs don't care about
    the register)

git-svn-id: trunk@30236 -
2015-03-15 14:00:32 +00:00
Jeppe Johansen
2bcef2daee Fix break caused by r30233
git-svn-id: trunk@30235 -
2015-03-15 13:34:01 +00:00
Jeppe Johansen
f92f0751f4 Fix selection of LDR/STR instructions in thumb mode. Most forms don't support pre or post indexing.
Fix emission of offsets.

git-svn-id: trunk@30234 -
2015-03-15 12:12:13 +00:00
Jeppe Johansen
155998fe89 Support .set and .weak in internal assembler.
Fix problem with fpc_initialHeap getting put in .data instead of .bss.

git-svn-id: trunk@30233 -
2015-03-15 12:10:54 +00:00
Károly Balogh
2555f12394 m68k: improved handling of moves and sign/zero extensions targeting address regs
git-svn-id: trunk@30232 -
2015-03-15 01:44:43 +00:00
nickysn
492101df76 * fixed a race condition during parallel build on linux, when the loaders are
built before mkdir has created the output directory

git-svn-id: trunk@30231 -
2015-03-14 22:27:03 +00:00