Commit Graph

2298 Commits

Author SHA1 Message Date
niravthakkar
203006579f Removed the extra check in parse_reg
The extra check for register is currently ignored, and trying to see what value does the encode function return. Its still to be worked out, how this value is used later, after decoding.
2016-11-28 13:32:30 +05:30
Michael Munday
cac5d4f2fb Add extended mnemonics for branches. 2016-11-25 16:38:32 -05:00
niravthakkar
9b01b4dc6f Added s390x instructions with their encoding 2016-11-25 19:44:04 +05:30
ketank-new
3288e547bf Update vm_s390x.dasc
added definations to macros to test operand type refeered x86 definations
no JUMP instruction found for s390x used BRANCH RELATIVE on CONDITION instead (brc)
Not sure how the condition will be checked , need to discuss this
2016-11-24 14:58:52 +05:30
ketank-new
4ea7607e02 Update vm_s390x.dasc
added instructions to macros, referring macro defination of x86
for macro ins_ANDdid not find equivalent s390x replacement  instruction for 'Not' hence have currently marked the place as '????'

'????' has to be replaced with s390x complement instruction
2016-11-24 14:02:50 +05:30
ketank-new
372f721e60 Update vm_s390x.dasc
used MOVE LONG EXTENDED in place of mov and
MOVE LONG instead of movzx
2016-11-24 11:25:07 +05:30
Michael Munday
5887962b0e Add assembly for decoding instructions.
Still guessing at this point. This code will need to be changed.
2016-11-23 18:02:00 -05:00
Michael Munday
dbf789536c Fix stack frame layout.
f8-f15 are callee-saved (not f0,f2,f4 and f6). There isn't space
for them in the caller's stack frame so we need to increase the
size of the interpreter's stack frame.
2016-11-23 17:30:10 -05:00
Michael Munday
5a69b4638a Fixup the save/restore register macros.
I believe these macros obey the C calling convention, so we need to
allocate our stack frame and save all callee-save registers. We
can tune it later if it turns out we don't need all the registers.
2016-11-22 13:58:10 -05:00
Michael Munday
d505a0e0ba Cleanup. 2016-11-22 13:47:35 -05:00
Michael Munday
d50f8aa92b Add preliminary frame offsets.
These are educated guesses at this point. We might need more stack space because
we don't have many free registers available.
2016-11-22 13:36:46 -05:00
ketank-new
31c0e6016a Update vm_s390x.dasc
Added definitions to macros savereg and restreg
used Store and Load instructions 
to store and load register contents to n from memory
2016-11-22 10:20:56 +05:30
Michael Munday
e90d985d08 Look for s390x file rather than S390x file. 2016-11-18 13:06:31 -05:00
ketank-new
3ac644ecee Update vm_s390x.dasc
Assigned general purpose register to existing macros
2016-11-18 17:09:20 +05:30
ketank-new
4aa1099d6a Update vm_s390x.dasc
Referred arm dasc file have created slots wherein i have to replace them with s390x registers and instructions
2016-11-17 14:58:17 +05:30
ketank-new
c36895a872 Update lj_frame.h
Added CFrame definations for S390X
values un assigned as i am unsure of the values
2016-11-16 17:19:10 +05:30
ketank-new
547b158ba4 Update vm_s390x.dasc
made some changes like mentioning arch from x86 to S390x
removed some x86 specific code
2016-11-16 15:34:32 +05:30
ketank-new
777b0671d3 Update lj_target_s390x.h
Added s390x specific condition codes
2016-11-16 15:09:59 +05:30
niravthakkar
dcb977d1db Changed the encoding for add,and,branch instructions 2016-11-16 14:44:12 +05:30
ketank-new
498f028e69 Update lj_target_s390x.h
changed instruction opcode to 64bit
2016-11-16 11:50:46 +05:30
ketank-new
31fb648a50 Update lj_arch.h
Removing the gcc check for now .. missed micheal's comment earlier
2016-11-16 10:32:53 +05:30
ketank-new
3e472eb261 Update lj_arch.h
Added missing elif condition for s390x for GCC dependency
2016-11-16 10:31:34 +05:30
Michael Munday
820fa8a049 Delete gcc version check for now.
Stick to the default until we know what we actually need.
2016-11-15 14:53:00 -05:00
Michael Munday
71d40ba670 Add some s390x C calling convention constants.
Guesses for now based on the ELF ABI supplement for zSeries.
2016-11-15 14:44:36 -05:00
Michael Munday
2315613b38 Fix some s390x declarations.
s/S390x/S390X/
2016-11-15 14:44:13 -05:00
ketank-new
96afe3e331 Create vm_s390x.dasc
created vm_s390x.dasc file
its a copy of vm_x86.dasc
working on to change this specific to s390x
2016-11-15 10:42:11 +05:30
ketank-new
9c3c87bc61 Update lj_target_s390x.h
removed un replaced arm instructions
changed S390 to S390x
2016-11-11 12:13:30 +05:30
ketank-new
6dfbec84b9 Rename lj_target_s390.h to lj_target_s390x.h
changed file name
2016-11-11 12:09:32 +05:30
ketank-new
d093cff04a Update Makefile
changed S390 to S390x
2016-11-11 12:08:47 +05:30
ketank-new
633376f0ca Update lj_arch.h
changed S390 to S390x
2016-11-11 12:04:51 +05:30
niravthakkar
9583ba36de Created s390x header file
Currently copy of ppc.h, which is same as arm64.h, and added the architecture definition
2016-11-10 19:00:51 +05:30
niravthakkar
f1f03ec44b Copy of dasm_arm64.lua file, with few changes
Have changed few sections of file, other part is common across architectures
2016-11-10 19:00:41 +05:30
ketank-new
be89c18b98 Update lj_arch.h
Added supporting lines for s390
Lines added using arm lines as reference
2016-11-10 10:42:51 +05:30
ketank-new
096a33d925 Update Makefile
Added condition for s390 in Makefile
2016-11-10 10:35:35 +05:30
ketank-new
8d336e1299 Create lj_target_s390.h
Adding file lj_target_s390.h
Few arm based instructions are changed with equivalent s390x instructions
2016-11-10 10:33:16 +05:30
Mike Pall
716f2daef8 LJ_GC64: Various followup fixes.
Contributed by Peter Cawley.
2016-10-20 20:55:12 +02:00
Mike Pall
bdcaf4bfd9 LJ_GC64: Fix HREF for pointers.
Contributed by Peter Cawley.
2016-10-19 09:48:38 +02:00
Mike Pall
6a25014c1c LJ_FR2: Fix slot 1 handling.
Contributed by Peter Cawley.
2016-10-16 21:04:38 +02:00
Mike Pall
3f43f09413 Merge branch 'master' into v2.1 2016-10-13 18:38:22 +02:00
Mike Pall
a68c411857 Fix GC step size calculation.
Thanks to Igor Ehrlich.
2016-10-13 18:37:58 +02:00
Mike Pall
54b78e7c66 LJ_GC64: Various fixes.
Contributed by Peter Cawley.
2016-10-12 17:36:45 +02:00
Mike Pall
63465fe71d LJ_GC64: Fix jit.on/off. 2016-10-08 11:30:01 +02:00
Mike Pall
cf80edbbba Fix -jp=a mode for builtins. 2016-10-02 14:33:31 +02:00
Mike Pall
f27b2509e0 Merge branch 'master' into v2.1 2016-10-02 14:25:04 +02:00
Mike Pall
fcc8244899 ARM: Fix BLX encoding for Thumb interworking calls.
Thanks to Charles Baylis.
2016-10-02 14:24:04 +02:00
Mike Pall
4ca3909547 Merge branch 'master' into v2.1 2016-09-19 21:23:35 +02:00
Mike Pall
8ada57eb49 Looks like COLORTERM has gone out of fashion. 2016-09-19 21:22:19 +02:00
Mike Pall
1a9a264356 Merge branch 'master' into v2.1 2016-09-19 21:19:07 +02:00
Mike Pall
9910dedae4 Initialize uv->immutable for upvalues of loaded chunks.
Thanks to Peter Cawley.
2016-09-19 21:17:58 +02:00
Mike Pall
03b03ef683 Windows/x86: Add MSVC flags for debug build with exception interop. 2016-09-06 19:37:30 +02:00