Stefano Sanfilippo
|
be503447b3
|
Fix bug in codegen for functions with multiple parameters.
Prior to this, all mutable param variables would be bound to the same parameter.
|
2015-03-09 01:02:24 +01:00 |
|
Stefano Sanfilippo
|
711f693f55
|
Renaming monicelli::plist to monicelli::plist_of
|
2015-03-08 21:27:24 +01:00 |
|
Stefano Sanfilippo
|
b2e7a11b7a
|
Introducing boost::ptr_vector and boost::ptr_unordered_set.
This is an easy way to increase the uniformity of the API.
|
2015-03-08 21:03:23 +01:00 |
|
Stefano Sanfilippo
|
b5196b1776
|
Replace hardcoded stdlib prototypes with a module registry.
|
2015-03-08 13:25:59 +01:00 |
|
Stefano Sanfilippo
|
4f4ab480a3
|
Moving system functions names to BitcodeEmitter.cpp
|
2015-03-08 12:47:52 +01:00 |
|
Stefano Sanfilippo
|
b1aff41ce9
|
Moving convertAndStore to preamble of BitcodeEmitter.cpp
|
2015-03-08 12:47:15 +01:00 |
|
Stefano Sanfilippo
|
be60adb510
|
Minor cosmetic fixes (splitting lines, beautify error message).
|
2015-03-08 11:29:26 +01:00 |
|
Stefano Sanfilippo
|
f933cc3163
|
Extracting a FunctionPrototype node.
This will allow more flexibility in defining externed functions.
|
2015-03-08 11:25:41 +01:00 |
|
Stefano Sanfilippo
|
35d3dbce75
|
Add implicit ret void after main in bitcode.
|
2015-03-07 19:44:49 +01:00 |
|
Stefano Sanfilippo
|
e921a24929
|
Adding -Wextra -Werror to compiler flags and fixing issues.
|
2015-03-07 17:24:25 +01:00 |
|
Stefano Sanfilippo
|
226aff325f
|
Adding LLVM stuff to CMake build script.
|
2015-03-07 17:23:46 +01:00 |
|
Stefano Sanfilippo
|
fb42a90235
|
Adding forgotten RuntimePrototypes include to BitcodeEmitter
|
2015-03-07 14:12:00 +01:00 |
|
Stefano Sanfilippo
|
8d28c5e909
|
Fix bug in FP to integer conversion.
|
2015-03-07 14:11:38 +01:00 |
|
Stefano Sanfilippo
|
c9bff1e64b
|
Ensure that parameters passed to function call are of the right type.
|
2015-03-07 14:11:25 +01:00 |
|
Stefano Sanfilippo
|
6725cbaf88
|
Implementing MonicelliType, refactoring LLVMType.
|
2015-03-07 14:10:49 +01:00 |
|
Stefano Sanfilippo
|
3968d937e0
|
Rename TYPE_MAP to TYPECAST_MAP (more relevant).
|
2015-03-07 14:09:57 +01:00 |
|
Stefano Sanfilippo
|
6df0801d35
|
Clearer error messages for BitcodeEmitter.
|
2015-03-07 14:08:52 +01:00 |
|
Stefano Sanfilippo
|
287d543b34
|
Extracting method BitcodeEmitter::emitFunctionPrototype()
|
2015-03-07 14:08:10 +01:00 |
|
Stefano Sanfilippo
|
c0bfd4757f
|
Implementing system module loading for register runtime functions.
|
2015-03-07 14:06:58 +01:00 |
|
Stefano Sanfilippo
|
754485e40b
|
Implementing abort/assert/input/output bitcode generation.
|
2015-03-07 14:02:29 +01:00 |
|
Stefano Sanfilippo
|
4321fa5dbf
|
Adding type coercion and deduction mechanism.
|
2015-03-06 16:10:35 +01:00 |
|
Stefano Sanfilippo
|
cac89bb476
|
Stubbing implicit type casting mechanism.
|
2015-03-06 14:51:54 +01:00 |
|
Stefano Sanfilippo
|
f9cfe700fa
|
Report error when applying int-only ops to float values.
|
2015-03-06 14:41:02 +01:00 |
|
Stefano Sanfilippo
|
ec21714af9
|
Minor refactorings to BitcodeEmitter.
1. split initalizer for module unique_ptr on multiple lines for readibility.
2. replace //TODO modules with commented loop.
|
2015-03-06 14:31:00 +01:00 |
|
Stefano Sanfilippo
|
b7be4dc37f
|
Implementing error handling in emitters.
As a result, Emitter iface changes by providing a bool retval.
False means failure and should be managed as such.
|
2015-03-06 14:29:52 +01:00 |
|
Stefano Sanfilippo
|
2ce76a1dfd
|
LLVM BitcodeEmitter completed for all statements.
Error handling is still missing.
|
2015-03-06 13:45:05 +01:00 |
|
Stefano Sanfilippo
|
4e883d148c
|
LLVM Module is now managed by BitcodeEmitter.
|
2015-03-06 13:42:47 +01:00 |
|
Stefano Sanfilippo
|
becdac1f7f
|
Bitcode emitter for expressions and returns, more things in place.
|
2015-03-05 22:27:14 +01:00 |
|
Stefano Sanfilippo
|
c740954528
|
Updating bitcode emitter stub according to new Emitter iface.
|
2015-03-05 17:34:20 +01:00 |
|
Stefano Sanfilippo
|
c55e25e2a2
|
Stub bitcode emitter.
|
2015-03-05 14:26:24 +01:00 |
|