Commit Graph

60088 Commits

Author SHA1 Message Date
yury
de3a479be3 * Added assembler comments about unused parameters.
git-svn-id: trunk@46522 -
2020-08-20 20:08:10 +00:00
yury
0a34a090e0 x86: It is more optimal to push some register (NR_FRAME_POINTER_REG) instead of a constant value in a_load_undefined_cgpara().
git-svn-id: trunk@46521 -
2020-08-20 19:59:36 +00:00
yury
e28fca9729 * If parentfp is passed in the stack it can be skipped only if po_delphi_nested_cc is set for the routine.
git-svn-id: trunk@46520 -
2020-08-20 18:30:09 +00:00
yury
c69090446a * msdos: Fixed AV in the internal linker in some cases when code or data exceeds 64k.
git-svn-id: trunk@46519 -
2020-08-20 17:39:45 +00:00
Mattias Gaertner
c2cceaeba8 pastojs: started delay specialization
git-svn-id: trunk@46518 -
2020-08-20 17:25:51 +00:00
Mattias Gaertner
fcaf04686b fcl-passrc: check generic constraint T:T
git-svn-id: trunk@46517 -
2020-08-20 17:20:43 +00:00
Mattias Gaertner
16e50abd74 fcl-passrc: fixed memeleak when error during parsing generic constraints
git-svn-id: trunk@46516 -
2020-08-20 17:19:56 +00:00
Mattias Gaertner
89752e042d fcl-passrc: fixed anaylyzer
git-svn-id: trunk@46515 -
2020-08-20 17:18:59 +00:00
yury
75e5afd45b * When optimization is off always load unused parentfp to a local location to be debugger friendly.
git-svn-id: trunk@46514 -
2020-08-20 16:59:10 +00:00
Mattias Gaertner
ccc26ad34c pastojs: compiler: reset hub
git-svn-id: trunk@46513 -
2020-08-20 16:41:46 +00:00
Mattias Gaertner
01d5519fe8 fcl-js: skip writeln test
git-svn-id: trunk@46512 -
2020-08-20 16:41:03 +00:00
yury
1002a7c590 * 8086: Fixed very long section names when $HUGECODE is ON and section based smartlinking is used.
* Added a utility function TrimStrCRC32().

git-svn-id: trunk@46511 -
2020-08-20 16:35:27 +00:00
pierre
b1ee6f7fdc Fix error in previous commit
Try to avoid unneeded steps for fullinstallsymlink

git-svn-id: trunk@46510 -
2020-08-20 16:01:34 +00:00
Mattias Gaertner
dba6f9a828 fcl-passrc: simplify
git-svn-id: trunk@46509 -
2020-08-20 13:26:40 +00:00
Mattias Gaertner
dacf740561 fcl-passrc: resolver: FinishedInterfaceIndex
git-svn-id: trunk@46508 -
2020-08-20 13:26:09 +00:00
pierre
ac36a214bf Do not set EXCLUDE_80BIT_TARGETS to 1 if OPT variable contains -dFPC_SOFT_FPUX80
git-svn-id: trunk@46507 -
2020-08-20 13:17:59 +00:00
michael
82346563c1 * Add StoredAttribute class, bug ID #37602
git-svn-id: trunk@46506 -
2020-08-20 12:06:14 +00:00
michael
8bc2326b77 * Fix bug #37601: add some attribte definitions
git-svn-id: trunk@46505 -
2020-08-20 11:53:43 +00:00
yury
5d0e1dbe5a * msdos: Fixed section based smartlinking after my recent changes.
git-svn-id: trunk@46504 -
2020-08-20 11:20:10 +00:00
yury
9a01bcf3dc * Changed Integer to Longint in definitions of RTTI structures. It fixes typinfo for 16-bit CPUs.
git-svn-id: trunk@46503 -
2020-08-20 10:31:56 +00:00
michael
460dc49d68 * Fix bug #37445, find resource file in subdir
git-svn-id: trunk@46502 -
2020-08-20 08:32:50 +00:00
pierre
ca5e2ee16a Also add platformopt to DllCmd[1], as done for ExeCmd[1]
git-svn-id: trunk@46501 -
2020-08-20 05:20:26 +00:00
florian
120825d1d6 * do not throw an internal error on illegal assembler expressions, resolves #37439
git-svn-id: trunk@46499 -
2020-08-19 21:09:44 +00:00
yury
e200fde888 * Fixed tests for 16-bit CPUs.
git-svn-id: trunk@46494 -
2020-08-19 11:02:29 +00:00
yury
1b99279617 * msdos: Enabled $HUGECODE for sysutils and classes to overcome 64K per unit code limit.
git-svn-id: trunk@46493 -
2020-08-19 10:49:40 +00:00
yury
9d41a435c2 * tinyheap: Disable inline when FPC_TINYHEAP_HUGE is defined to prevent code bloat.
git-svn-id: trunk@46492 -
2020-08-19 10:48:00 +00:00
yury
97eb32e6fd * 8086: Also fixed loading a register to a 32-bit ref in case the source register is used as the ref base or index.
git-svn-id: trunk@46491 -
2020-08-19 10:27:19 +00:00
yury
4873ec73a7 * 8086: Fixed loading a 32-bit ref to a register in case the target register is used as the ref base or index.
git-svn-id: trunk@46490 -
2020-08-19 10:20:47 +00:00
ondrej
809db09169 sql parser: support CASE with selector (CASE A WHEN 1 THEN B ELSE C END)
git-svn-id: trunk@46489 -
2020-08-19 08:45:00 +00:00
pierre
5d6d47bad1 Amend commit 46484: Do not accept LOC_CSUBSETREF location type as this represents read-only memory region which should never be modified
git-svn-id: trunk@46487 -
2020-08-18 21:58:19 +00:00
florian
b267f6fcb3 * internal error unified
git-svn-id: trunk@46486 -
2020-08-18 21:10:25 +00:00
florian
004ac4d1f4 * Xtensa: set abi correctly
git-svn-id: trunk@46485 -
2020-08-18 21:10:06 +00:00
pierre
a4cfade86b Avoid internalerror 200203273 by handling LOC_CSUBSETREG and LOC_CSUBSETREF as LOC_SUBSETREG in tcgassignmentnode.pass_generate_code
git-svn-id: trunk@46484 -
2020-08-18 20:52:47 +00:00
yury
580e9e5169 * wlib: calculate the record size according to the number of files in the library.
git-svn-id: trunk@46483 -
2020-08-18 20:02:19 +00:00
yury
9e11f8122f * Corrected r46481. Use both tcalo_new_section and tcalo_make_dead_strippable flags since only the default implementation implies a new section creation when tcalo_make_dead_strippable is specified.
git-svn-id: trunk@46482 -
2020-08-18 12:27:46 +00:00
yury
17e75004c5 * Allow library based smartlinking of indirect symbol entries.
git-svn-id: trunk@46481 -
2020-08-18 12:02:20 +00:00
yury
c75953c12b * msdos: Implemented library based smartlinking of the dead stripable vectorized lists. It is enabled for the internal linker and wlink. These linkers sort sections by name by default.
git-svn-id: trunk@46480 -
2020-08-18 11:36:39 +00:00
yury
764227193a * Added on option to implement library based smartlinking of the dead stripable vectorized lists (e.g. resource strings index). By default smartlinking of such lists only supported when the section based smartlinking (tf_smartlink_sections) is enabled for a target.
git-svn-id: trunk@46479 -
2020-08-18 11:31:39 +00:00
yury
e4b717c817 * 8086: More fixes for Ofs() handling.
git-svn-id: trunk@46478 -
2020-08-18 09:52:40 +00:00
yury
2186846ab1 * 8086: Fixed an internal error for cases like FarPtr2 := FarPointer($12345678) + int16;
git-svn-id: trunk@46477 -
2020-08-18 09:19:20 +00:00
svenbarth
075057f929 * fix for Mantis #37579: mark the 'German' tokens with the characters they represent
git-svn-id: trunk@46475 -
2020-08-17 19:45:13 +00:00
florian
7e8a50452b * StackTop must be OS specific (and not CPU specific)
git-svn-id: trunk@46474 -
2020-08-17 17:50:43 +00:00
yury
15d1d00c34 * fixed a typo.
git-svn-id: trunk@46473 -
2020-08-17 14:23:27 +00:00
ondrej
0b440758ea sql parser: support "SELECT 'a' 'b'" syntax (MSSQL)
git-svn-id: trunk@46472 -
2020-08-17 13:56:14 +00:00
pierre
b5c8ac7769 Add fgl unit to symbian RTL unit list
git-svn-id: trunk@46471 -
2020-08-17 13:47:10 +00:00
yury
222f981dd1 * 8086: Fixed Ofs() for far routines.
resultdef of typeconvnode.typecheck_proc_to_procvar() is reused every time you get an address of a proc. So it is forbidden to change the far/near attribute of resultdef - it leads to mess during code generation. 
  Instead it is needed to use separate reusable resultdefs with new flags pc_far_address and pc_offset.

git-svn-id: trunk@46470 -
2020-08-17 13:37:55 +00:00
yury
6878ffbf04 * In the TP mode for 16-bit CPUs uint8+uint8 is extended to sint16+sint16. This is TP compatible.
git-svn-id: trunk@46468 -
2020-08-17 09:25:45 +00:00
ondrej
b814c41ea9 sql parser: support functions with identifier path (MSSQL)
git-svn-id: trunk@46467 -
2020-08-17 09:24:32 +00:00
florian
8636015265 + Xtensa: consider also floating point stores in TCpuAsmOptimizer.RegLoadedWithNewValue
git-svn-id: trunk@46465 -
2020-08-16 21:48:30 +00:00
florian
f9ddc3ac66 + Xtensa: L32IMov2L32I optimization
git-svn-id: trunk@46464 -
2020-08-16 21:41:56 +00:00