Joshua Warner
b3bd58aeff
work in progress towards 64-bit ARM JIT support
...
This won't build, it's just a snapshot of what I have so far.
Conflicts:
include/avian/codegen/architecture.h
include/avian/codegen/registers.h
src/codegen/compiler.cpp
src/codegen/compiler/event.cpp
src/codegen/compiler/site.cpp
src/codegen/compiler/site.h
src/codegen/registers.cpp
src/codegen/target/arm/assembler.cpp
src/codegen/target/arm/registers.h
2014-12-22 12:59:26 -07:00
Joshua Warner
8f797e9b4c
add non-member begin/end methods for older compilers
2014-12-09 11:47:36 -07:00
Joshua Warner
01de3d9d5c
remove lingering 32-count limits on registers, refactor iteration, improve constants, ...
2014-12-09 11:18:00 -07:00
Joshua Warner
a749ba7adc
replace (int8_t)Register cast with Register::index()
2014-12-09 08:19:44 -07:00
Joshua Warner
08f524a106
add convenience (1 << lir::Operand::Type::*) shortcuts (lir::Operand::*Mask)
2014-12-09 08:19:44 -07:00
Joshua Warner
a3ccc94cf5
make BoundedRegisterMask a subclass of RegisterMask
2014-12-09 08:19:44 -07:00
joshuawarner32@gmail.com
6b889b1d78
get rid of implicit Register casts
2014-12-09 08:19:44 -07:00
joshuawarner32@gmail.com
7c24701d37
transition x86 registers to Register instances
2014-12-09 08:19:44 -07:00
joshuawarner32@gmail.com
3bad154602
add back NoRegister and remove some implicit int->Register casts
2014-12-09 08:19:44 -07:00
joshuawarner32@gmail.com
998a5168b7
make Register a class
2014-12-09 08:19:44 -07:00
joshuawarner32@gmail.com
02d1a83ad9
rename lir::Register to lir::RegisterPair
2014-12-09 08:19:43 -07:00
joshuawarner32@gmail.com
2939480a65
begin renaming lir:: types
2014-12-09 08:19:43 -07:00
joshuawarner32@gmail.com
94761711c9
make RegisterMask a class
2014-12-09 08:19:43 -07:00
joshuawarner32@gmail.com
61e79d4f3b
typdef Register
2014-12-09 08:19:43 -07:00
Joshua Warner
45cc85829a
remove old 32-bit registerMask stuff
2014-12-09 08:19:43 -07:00
Joshua Warner
76197e1f1d
typedef RegisterMask
2014-12-09 08:19:43 -07:00
Joshua Warner
f187361889
rename RegisterMask to BoundedRegisterMask
2014-12-09 08:19:43 -07:00
Joshua Warner
1110d3ff50
begin converting to setLowHighRegisterMasks
2014-12-09 08:19:43 -07:00
Joshua Warner
ac72aa8b91
split low/high register mask in OperandMask
2014-12-09 08:19:42 -07:00
Joshua Warner
51b510cbea
first pass at cmake + visual studio support
2014-07-30 14:15:15 -06:00
Joshua Warner
31de9a48c9
reformat
2014-07-24 10:09:29 -06:00
Joshua Warner
1ad1fe9048
use enum class in ir
2014-07-24 10:09:29 -06:00
Joshua Warner
060b5c8f13
use c++11 variadic templates in Compiler::call
2014-07-24 10:09:29 -06:00
Joshua Warner
4d79f3bea1
Replace Allocator with Alloc or AllocOnly where possible
2014-07-16 18:51:35 -06:00
Joshua Warner
2d0ac3ac17
reduce vm::Zone interface
2014-07-16 18:41:02 -06:00
Joshua Warner
29ee088f19
remove unused Half type
2014-07-16 18:41:02 -06:00
Joshua Warner
836cc41320
bulk, global reformat
2014-07-11 13:25:22 -06:00
Joshua Warner
7642b94308
reformat changes since master
2014-07-11 13:25:22 -06:00
Joshua Warner
b5699cc9dc
move Machine::*Type to GcObject::*Type
2014-07-11 09:32:55 -06:00
Joshua Warner
05d80aee8b
remove static references to TargetBytesPerWord in Compiler
2014-06-01 14:57:05 -06:00
Joshua Warner
1fb6a0bceb
fix up creation of ir::Type
2014-06-01 14:22:51 -06:00
Joshua Warner
9273d5ca39
remove redundant Compiler::initLocal footprint parameter
2014-05-30 23:40:24 -06:00
Joshua Warner
91c5599fc0
remove redundant Compiler::storeLocal footprint parameter
2014-05-30 23:40:23 -06:00
Joshua Warner
008bb6b86e
remove redundant Compiler::unaryOp type parameter
2014-05-30 23:40:23 -06:00
Joshua Warner
b14709c54c
remove redundant Compiler::condJump type parameter
2014-05-30 23:40:22 -06:00
Joshua Warner
33d946d249
remove redundant Compiler::store srcType parameter
2014-05-30 23:40:22 -06:00
Joshua Warner
e3d01746e8
remove redundant Compiler::truncate srcType parameter
2014-05-30 23:40:22 -06:00
Joshua Warner
b853f1a594
remove redundant f2i & i2f aType parameter
2014-05-30 23:40:22 -06:00
Joshua Warner
c843a97e23
remove redundant f2f aType parameter
2014-05-30 23:40:21 -06:00
Joshua Warner
963b371e04
remove redundant load srcType parameter
2014-05-30 23:40:21 -06:00
Joshua Warner
6fdd5d13ca
remove redundant return_ type parameter
2014-05-30 23:40:21 -06:00
Joshua Warner
746c0fa0e8
remove ir::Type::Invalid, no longer needed for Subroutine
2014-05-30 23:40:21 -06:00
Joshua Warner
5ad1a14a73
explode Subroutines in compile.cpp rather than handling them in Compiler
2014-05-30 23:40:21 -06:00
Joshua Warner
cb7f570f20
begin enforcing more strong typing
2014-05-30 22:51:03 -06:00
Joshua Warner
43eb49cf53
fix sizing of some stack ints
2014-05-30 22:41:11 -06:00
Joshua Warner
f9cbca8f7d
pair up stack for NativeCallingConvention
2014-05-30 22:41:11 -06:00
Joshua Warner
69edeaadee
remove redundant Compiler::stackCall footprint argument
2014-05-30 22:41:11 -06:00
Joshua Warner
97ce7d2b4e
pass CallEvent arguments in Slice as well
2014-05-30 22:41:10 -06:00
Joshua Warner
ad3ec1abf3
introduce Frame::stackCall util
2014-05-30 22:41:10 -06:00
Joshua Warner
479c056b2c
move Compiler::Operand to ir::Value
2014-05-30 22:41:10 -06:00