Bill Currie
4872c56e2d
Mark the end of the v6 opcodes.
2018-10-11 10:05:36 +09:00
Bill Currie
673b45be05
Add diagnostic hooks.
2018-10-09 12:46:13 +09:00
Bill Currie
d95c01be1a
More defspace tests.
2018-10-09 12:45:26 +09:00
Bill Currie
6f28ab2a68
Add basic quaternion multiplication tests.
2018-10-09 12:44:46 +09:00
Bill Currie
ba3220e4d1
Fix a format oops.
...
I had never noticed the error...
2018-10-09 12:42:21 +09:00
Bill Currie
34bcf7faab
Do a pure/const/noreturn/format attribute pass.
...
I always wanted these, but as gcc now provides warnings for functions that
could do with such attributes, finding all the functions is much easier.
2018-10-09 12:42:21 +09:00
Bill Currie
05fd2d8cdd
Start work on a unit test for defspace.
2018-09-09 22:37:09 +09:00
Bill Currie
3a4667318c
Fix the qfcc test autodependencies.
2018-09-09 22:36:20 +09:00
Bill Currie
d1cb15664f
Fix some spelling issues in a comment.
2018-09-09 22:34:24 +09:00
Bill Currie
71569b45c9
Pre-format diagnostic messages.
...
This will make it easier to hook diagnostics enabling unit tests.
2018-09-09 18:09:32 +09:00
Bill Currie
113e0d82ba
Fix a signed comparison error.
...
Not sure how this fix got lost.
2018-09-09 16:48:19 +09:00
Bill Currie
aebd9288cd
Force thread count to 1 when pthreads is unavailable.
...
Don't want the thread count being misreported.
2018-09-09 13:41:22 +09:00
Bill Currie
fa1514798b
Print the number of threads used by qfvis.
2018-09-09 13:41:00 +09:00
Bill Currie
06ab36de3d
Slight cleanup of winding allocation.
...
It seems gcc doesn't care if the & is present when calculating field
offsets, but it not being there bothered me very much and might as well use
our "standard" macro anyway.
2018-09-09 13:38:32 +09:00
Bill Currie
db3df6f8a7
Fix a bunch of dead increments.
2018-09-09 11:12:04 +09:00
Bill Currie
3f638d95ba
Remove a possibly spurious break.
...
I'm not certain despair actually meant for the break to be there. It
certainly would have sped up the game a bit but at the expense of proper
blood trails in the software renderers.
2018-09-09 10:54:38 +09:00
Bill Currie
62793b2dc2
Fix some potentially garbage assignments.
...
These are the ones where I could easily make scan-build happy. They do seem
to be potential holes where invalid data in one place could result in use
of uninitialized values.
2018-09-09 09:54:16 +09:00
Bill Currie
59e85b7d5e
Fix a pile of dead assignments.
...
Some were actual bugs!
2018-09-08 22:23:57 +09:00
Bill Currie
59b04dbcca
Make many qfo int fields unsigned.
...
I don't remember why I thought signed was a good idea, but unsigned does
make more sense for most fields.
2018-09-08 19:45:19 +09:00
Bill Currie
f75ff2d269
Fix some null argument issues.
2018-09-07 22:30:44 +09:00
Bill Currie
1eb1622420
Fix some strncat issues.
2018-09-07 21:27:34 +09:00
Bill Currie
8f028b8a0d
Fix some double frees.
2018-09-07 20:03:19 +09:00
Bill Currie
8fd5be0ee0
Fix a pile of sizeof goofs.
...
While scan-build wasn't what I was looking for, it has proven useful
anyway: many of the sizeof errors were just noise, but a few were actual
bugs (allocating too much or too little memory).
2018-09-07 20:00:57 +09:00
Bill Currie
575a67b2a1
mat4 test case fixes.
...
The tests cases themselves were buggy.
2018-08-26 15:06:08 +09:00
Bill Currie
89daf15215
Fix a c&p error in a doc comment.
2018-08-26 15:05:13 +09:00
Bill Currie
b37b0180cb
Actually do a test for triangle.r.
...
If the kahan triangle area method breaks, I did something wrong with qfcc's
handling of parentheses (ie, floating point math is not truly associative).
2018-08-23 20:52:32 +09:00
Bill Currie
1b9149ef31
Fix an argument passing error in test-harness.
...
It failed to pass the last argument to the ruamoko program being run.
2018-08-23 20:22:29 +09:00
Bill Currie
2fcda44ab0
Kill dag leaf nodes on assignment.
...
Fixes the failing swap test caused by a's original value being used (via t)
after being written.
2018-08-23 20:07:22 +09:00
Bill Currie
cb366dd825
Better flow dot dump "scripting".
...
Not sure I want to keep the statements in the live dump, but the system
is more flexible now.
2018-08-23 20:07:11 +09:00
Bill Currie
cdbdf3f0eb
Make print_operand global.
2018-08-23 20:05:16 +09:00
Bill Currie
8b8b42bde2
Fix a typo in a comment.
2018-08-23 20:04:51 +09:00
Bill Currie
f250065003
Add tests for swapping vars and triangle area.
...
Triangle area was meant just to check Kahan's equation, but it found a
problem with swapping vars. swap.r currently fails.
2018-08-21 16:27:22 +09:00
Bill Currie
0f279cd3f0
Add a comment about fake statement numbers.
...
I had forgotten how they worked (not surprising after 6 years).
2018-08-21 15:57:51 +09:00
Bill Currie
1b84ea747c
Dump statements during flow analysis.
2018-08-21 15:56:39 +09:00
Bill Currie
5ba13d759b
Fix a FIXME.
...
Set of everything got added shortly after that FIXME was added, but I
forgot to fix it.
2018-08-21 15:56:03 +09:00
Bill Currie
fbdf560a7a
Rename print_extra_live to print_flow_vars.
2018-08-21 15:55:11 +09:00
Bill Currie
5dbb7b6d4d
Handle all modelgen commands.
...
Just in case someone ever adds models.qc to progs.src.
2018-08-20 00:11:02 +09:00
Bill Currie
027e76b4c9
Add a doc block to parse_cpp_line.
...
It took me too long to figure it out :P
2018-08-20 00:09:20 +09:00
Bill Currie
4f58429137
Fix an unhealthy pile of gcc 8 warnings.
...
While some of the warnings were merely annoying, some where actual bugs or
unearthed bugs in related code.
2018-08-20 00:05:00 +09:00
Bill Currie
81202d7b29
Add a shutdown builtin to qwaq.
2018-08-19 19:44:45 +09:00
Bill Currie
b795beb520
Add support for \? to qc strings.
...
And fix up the man page a bit.
2018-08-19 19:31:52 +09:00
Bill Currie
0de0eb2fc7
Fix a bunch of bit-rot.
2018-06-08 13:21:30 +09:00
Bill Currie
f522e58d53
Fix some blender warnings.
2018-06-08 12:45:57 +09:00
Bill Currie
2329fb1885
Fix some warnings and bitrot.
2016-10-25 00:10:30 +09:00
Bill Currie
932647bad3
Fix a segfault with switch on an undefined symbol.
...
Forgot to check if the test expression was not an error.
2016-01-10 13:41:49 +09:00
Bill Currie
f163e35f21
Add a builtin to get keydown.
2016-01-10 13:33:05 +09:00
Bill Currie
bf40f0126e
Convert vector expressions when passing parameters.
...
Calling a function with [vector stuff] caused an ICE.
2016-01-08 21:16:37 +09:00
Bill Currie
1061256c4f
Add a missing expression type to dot_expr.
2016-01-08 21:15:47 +09:00
Bill Currie
431074d58f
Update label destination when moving labels.
...
This fixes a segfault when optimizing the empty-body test. The label was
getting moved, but the statement block to which it pointed was not updated
and thus it pointed to dead data.
2016-01-07 21:24:29 +09:00
Bill Currie
d54ee6c8c3
Do not promote debug messages to warnings.
...
I think I copied the notice code for debug and forgot to edit the
promotion. Oops.
2016-01-07 20:08:07 +09:00