292 Commits

Author SHA1 Message Date
Daniel_Cortez
28c69cd8c8 #emit: Set the sign bit properly on non-32-bit cells 2017-11-12 19:44:51 +07:00
VVWVV
7440670150 fix params for data seg.
Conflicts:
	source/compiler/sc1.c
2017-11-12 19:44:51 +07:00
Daniel_Cortez
eb5ee448e5 emit/__emit: Use case-sensitive search in emit_findopcode()
The instruction name is copied in lower case anyway (see emit_parse_line()).
2017-11-11 20:50:08 +07:00
Daniel_Cortez
af31143ec3 emit/__emit: Avoid excess instruction name copying in emit_findopcode() 2017-11-11 20:50:07 +07:00
Daniel_Cortez
d15c11f420 Fix OPHANDLER_CALL-related warnings issued by clang on non-x86 targets 2017-11-11 20:50:07 +07:00
Daniel_Cortez
06feab9224 emit/__emit: Code cleanup 2017-11-11 20:50:07 +07:00
Daniel_Cortez
2492d4793b emit/__emit: Set the sign bit properly on non-32-bit cells 2017-11-11 20:50:06 +07:00
Daniel_Cortez
4fc7ef863a emit/__emit: Use 'tFIRST' instead of hardcoded '256' 2017-11-11 20:50:06 +07:00
Zeex
735291fd64 Merge branch 'performance' 2017-10-28 05:18:36 +06:00
Zeex
4a5e02ef29 Clean up global declarations 2017-10-28 05:05:37 +06:00
Zeex
b962246ad5 Fix build errors on MSVC 2013 2017-10-28 04:39:34 +06:00
Zeex
38f901445b Merge pull request #202 from Y-Less/master
-E warnings as errors.
2017-10-26 04:43:44 +06:00
Zeex
693591bdc3 Don't delete trailing whitespace before '\'
new s [] = "hello \
	world";

^ needs to be "hello world", not "helloworld".
2017-10-26 04:36:19 +06:00
Y_Less
f1da832ae9 -E warnings as errors. 2017-10-24 21:18:07 +02:00
Zeex
237d89e7e4 Merge branch 'performance' of https://github.com/maddinat0r/pawn into performance v3.10.3-performance 2017-10-24 08:38:47 +06:00
Zeex
36d5eed854 v3.10.3 v3.10.3 2017-10-23 08:05:40 +06:00
Zeex
17ebeb8ebe Revert "triggers an error for issue #129"
This reverts commit 9e4a2b283fd01549d05058c8946ecee974e30dbe.

Reverting because of #198.
2017-10-23 08:04:02 +06:00
Zeex
bf514bcd7d Increase size of literal queue buffer 2017-10-23 08:00:33 +06:00
Alex Martin
08f760fe28 use more recent version of Visual Studio 2017-10-22 10:57:15 +02:00
Zeex
a99e649a6b Group sequences of repeating literals into one write
Add a new "dumpn" pseudo-opcode that dumps N copies of the same value
to the stage buffer. It's basically the same as "dump" but much faster
when dumping the same value a lot of times, for example, when writing
initial values for large arrays.

On my Linux system the time it took to dump a 100000000 cell array went
down from 20 to 8 seconds in Release configuration, i.e. 2.5 times faster!

I haven't profiled further yet (Visual Studio 2017 profiler is broken,
gprof won't output anything (I'm probably doing it wrong), I might try
valgrind later).
2017-10-22 12:36:55 +06:00
Zeex
092b07464b Fix compile warning 2017-10-22 11:42:46 +06:00
Zeex
93be5d86b2 Correct cmake command in readme 2017-10-21 23:51:18 +06:00
Zeex
800b883a44 Move List of changes up 2017-10-21 16:12:18 +06:00
Zeex
b38e06b536 Add build instructions 2017-10-21 16:11:36 +06:00
Zeex
a4b2546d4e Update original reamde link 2017-10-21 15:33:00 +06:00
Zeex
e347dcd399 Rename readme.txt to readme_compuphase.txt 2017-10-21 15:32:10 +06:00
Daniel_Cortez
aa9f589bf5 Memoize the address of the '__line' symbol instead of searching for it in loctab/glbtab every new line 2017-10-20 23:02:34 +07:00
Alex Martin
a4dbe02330 minor cleanup 2017-10-19 21:08:20 +02:00
Alex Martin
7363feb612 change hashmap size 2017-10-19 21:08:20 +02:00
Daniel_Cortez
dc21aec45d Set cache_sym->next to NULL in symbol_cache_remove() 2017-10-19 21:08:20 +02:00
Daniel_Cortez
03aaa4f2cd Minor adjustments 2017-10-19 21:08:20 +02:00
Daniel_Cortez
f5ba1b4077 Improved itoh() implementation 2017-10-19 21:08:20 +02:00
Daniel_Cortez
8665f8b03c Code cleanup, style fixes 2017-10-19 21:08:20 +02:00
Alex Martin
cbf7e661d2 fix previous stage buffer performance opt 2017-10-19 21:08:20 +02:00
Alex Martin
9efca3a7b4 increase hashmap size 2017-10-19 21:08:20 +02:00
Alex Martin
b312efa57b bug-fix: append new symbol to last one 2017-10-19 21:08:20 +02:00
Alex Martin
3c5f91dd0b fix symbol lookup for symbols with same name 2017-10-19 21:08:20 +02:00
Alex Martin
73d4934d61 store symbol children for faster lookup 2017-10-19 21:08:20 +02:00
Alex Martin
2d8791a0f2 minor improvement 2017-10-19 21:08:20 +02:00
Alex Martin
0138726698 add symbol lookup cache 2017-10-19 21:08:20 +02:00
Alex Martin
66e745a94b improve write op performance 2017-10-19 21:08:20 +02:00
Zeex
2a85a9fa33 Merge pull request #190 from YashasSamaga/i154-fix
trigger error if an array of unknown size is being returned
2017-10-08 02:48:48 +06:00
Zeex
9daeae3d1a Merge pull request #151 from YashasSamaga/i129-fix
triggers an error for issue #129
2017-10-08 02:47:20 +06:00
Zeex
e7ecf386f8 Remove temporary '\a' characters and trailing whitespace in line continuations 2017-10-08 02:31:34 +06:00
Zeex
a0c994493d Merge pull request #192 from YashasSamaga/i187-fix
remove extra new lines from #warning and #pragma deprecated
2017-10-07 23:04:40 +06:00
Zeex
8b8f8adbb5 Merge pull request #189 from YashasSamaga/i159-fix
fixes deletion of constants passed a compiler args during parse
2017-10-07 22:49:28 +06:00
Zeex
0fab187aad Merge pull request #185 from Y-Less/master
Document correct state transition target name.
2017-10-07 22:48:14 +06:00
Zeex
6e08f46ddb Merge pull request #180 from VVWVV/feature_asm_expr
emit/__emit operator
2017-10-07 22:47:27 +06:00
Double V
c1842814ef Merge pull request #1 from Daniel-Cortez/emit_op
Rename `asm` to `emit`, add `__emit` as an alternate keyword.
2017-10-06 15:20:25 +03:00
Daniel_Cortez
6119df8f2b Rename asm to emit, add __emit as an alternate keyword. 2017-10-06 15:51:24 +07:00