Commit Graph

  • bb109b47d6 Basic module system (only file namespacing) Ginger Bill 2016-09-14 14:16:01 +01:00
  • a60e6bedd9 Begin work on modules - No codegen!!! Ginger Bill 2016-09-14 12:00:04 +01:00
  • 1147e17c13 Fix addressing modes for selectors Ginger Bill 2016-09-13 23:09:46 +01:00
  • 817ae643c5 Remove len(), cap() and replace with selectors; fix defer in match Ginger Bill 2016-09-13 12:11:52 +01:00
  • 59fb74d2a2 Fix array bounds checking Ginger Bill 2016-09-12 23:16:06 +01:00
  • d4ba6b5466 Slice and substring bounds checking Ginger Bill 2016-09-12 15:10:15 +01:00
  • 9ff4a8b5ab Switchable array bounds checking Ginger Bill 2016-09-12 14:41:36 +01:00
  • 687e78d5dd Some global init cleanup; volatile types Ginger Bill 2016-09-12 12:05:38 +01:00
  • 7509cdceb8 Default struct member reordering for minimal size Rule: largest members to smallest; if same size, order in source order Ginger Bill 2016-09-10 11:24:50 +01:00
  • 6979678ff9 Begin reording of struct members by default. Ginger Bill 2016-09-09 23:33:54 +01:00
  • 1ca752ce04 Remove duplicates in type info data. Ginger Bill 2016-09-09 19:48:28 +01:00
  • 56dd12c54c Fix match statements for the new AstNodeArray type Ginger Bill 2016-09-08 18:28:18 +01:00
  • c6d02e4778 Fix missing type_info with manual linear search Ginger Bill 2016-09-08 00:23:14 +01:00
  • 3d02f8a5fd Slice variadic expansion .. Ginger Bill 2016-09-07 22:42:38 +01:00
  • 50aeea1c2e Remove AstNode linked lists and replace with arrays Ginger Bill 2016-09-07 21:59:03 +01:00
  • 7ba13a18a3 Basic variadic print procedure Ginger Bill 2016-09-07 19:23:00 +01:00
  • 2c4193a242 any type Ginger Bill 2016-09-07 15:15:10 +01:00
  • 61fcfd6f3d Begin Type_Info Missing stuff in records, procedures, and tuples Ginger Bill 2016-09-07 14:03:17 +01:00
  • 455820fc84 Speed up SSA generation and clang compilation Ginger Bill 2016-09-05 18:42:42 +01:00
  • ae72b3c5bd Tagged unions memory layout change; begin demo 002 Ginger Bill 2016-09-04 22:50:17 +01:00
  • c2e3c3801a Type match statement for tagged unions Ginger Bill 2016-09-04 16:16:17 +01:00
  • cdd8eadda1 Fix type system in SSA generation Removes a lot of dodgy things Still needs to be tested a lot and better refactored Ginger Bill 2016-09-03 22:07:16 +01:00
  • 7f884ed251 Start implementing Tagged Unions Ginger Bill 2016-09-03 18:18:45 +01:00
  • 11205f968a Typesafe variadic procedures Ginger Bill 2016-09-03 12:41:03 +01:00
  • e1a6775661 Runtime assert Ginger Bill 2016-09-02 15:51:48 +01:00
  • 25e9b9bc87 min, max, abs Ginger Bill 2016-09-02 14:14:12 +01:00
  • fa09d805e2 Match statements; Type System change (Type_Record for all sum and product types) Ginger Bill 2016-09-01 20:38:44 +01:00
  • ff6e21cb87 Fix subtype polymorphism Ginger Bill 2016-08-31 18:29:51 +01:00
  • 5399463d9d down_cast Ginger Bill 2016-08-31 00:52:19 +01:00
  • cda0234d48 Subtyping Polymorphic arguments; using procedure parameters Ginger Bill 2016-08-30 23:32:04 +01:00
  • a06f70d5d9 Better using; foreign system libraries; optional semicolons Ginger Bill 2016-08-30 18:39:29 +01:00
  • 0eaf7bd830 Begin "Everything's a namespace" Ginger Bill 2016-08-30 00:04:14 +01:00
  • 593563d8ea new, new_slice, delete Ginger Bill 2016-08-28 01:06:42 +01:00
  • ae75ab169b Pointer arithmetic builtin procedures Ginger Bill 2016-08-27 11:05:08 +01:00
  • 3a189b9c1c Save before Demo 001 Ginger Bill 2016-08-25 19:52:51 +01:00
  • f93cf3827b Change rune literals to #rune "C" Ginger Bill 2016-08-25 00:23:04 +01:00
  • d2c64be85c using on struct/union fields Ginger Bill 2016-08-24 23:25:56 +01:00
  • 6bd898e552 Untagged (unsafe) unions and unambiguous in|postfix notation. Ginger Bill 2016-08-24 15:06:36 +01:00
  • 975705f1fc Infix and Postfix procedure calls gingerBill 2016-08-23 11:11:01 +01:00
  • aaecb18c8f Fix procedure's scope gingerBill 2016-08-23 00:03:53 +01:00
  • 81c592b5e9 Integer Enumerations gingerBill 2016-08-22 15:43:13 +01:00
  • a98e93f03f File Library and TypeDecl syntax change gingerBill 2016-08-22 11:52:49 +01:00
  • 680274b6f1 Implicit Context and #thread_local gingerBill 2016-08-19 23:35:09 +01:00
  • 745237459a Initial Demo001 code for tour of language Ginger Bill 2016-08-19 15:35:48 +01:00
  • ddb15e73c0 Remove print(ln) and fix swizzle gingerBill 2016-08-19 09:54:01 +01:00
  • f931b089d5 print_(f32|f64) Ginger Bill 2016-08-18 15:58:36 +01:00
  • 6b2cd1b33f Win32 Demo - Minor math tests gingerBill 2016-08-18 09:24:52 +01:00
  • 6f9d11b381 Remove scalar*vector; swizzle; broadcast gingerBill 2016-08-17 18:36:37 +01:00
  • c4fe2ace05 Fix Scoping of proc type decls gingerBill 2016-08-17 12:04:17 +01:00
  • 511f3744f6 Fix automatic pointer deref for structures in SSA gingerBill 2016-08-17 11:18:38 +01:00
  • f17bc687a3 "Cool" OpenGL Demo of a rectangle gingerBill 2016-08-16 23:23:01 +01:00
  • 9e61e3beee field = value, for structure literals gingerBill 2016-08-16 21:01:59 +01:00
  • e8530ca883 Win32 Demo: OpenGL Context gingerBill 2016-08-16 20:08:40 +01:00
  • 2d49a61563 defer statements gingerBill 2016-08-16 18:53:02 +01:00
  • 5da6b74567 Compile with odin.exe and no run.bat This is win32 only and requires CreateProcessA gingerBill 2016-08-16 12:33:11 +01:00
  • 6f7f82d877 Merge branch 'master' of http://git.handmadedev.org/gingerbill/Odin gingerBill 2016-08-16 11:43:21 +01:00
  • 74e02760ca Win32 Window Test gingerBill 2016-08-16 11:00:06 +01:00
  • 0dd17fe843 Win32 Window Test gingerBill 2016-08-15 21:22:44 +01:00
  • 50fd9548b9 Win32 test gingerBill 2016-08-15 21:22:44 +01:00
  • dcbb2fcfbd Full Unicode Support gingerBill 2016-08-15 14:54:45 +01:00
  • 3ed75b22a3 string comparisons gingerBill 2016-08-15 13:46:01 +01:00
  • 0f48a7d299 #foreign "custom_name"; <N x i1> bugs (see test.ll and test2.ll) gingerBill 2016-08-14 22:19:39 +01:00
  • 0edae8c848 Vector index works with booleans now. gingerBill 2016-08-14 19:37:47 +01:00
  • b44bc99b88 append :: proc(s: ^[]T, i: T) -> bool gingerBill 2016-08-14 15:31:11 +01:00
  • ee00236412 expr as type; {N}bool is still causing problems gingerBill 2016-08-14 12:22:31 +01:00
  • c10b46af9f Compound Literals - struct, array, slice, vector gingerBill 2016-08-12 17:21:34 +01:00
  • 84f2bcd885 Nested Procedures gingerBill 2016-08-11 22:05:09 +01:00
  • 19cc77dad3 Code generation for procedure literals gingerBill 2016-08-11 21:53:44 +01:00
  • 4c467b118d copy(...) gingerBill 2016-08-10 20:05:45 +01:00
  • 153c27c755 Tuple support in codegen gingerBill 2016-08-10 11:53:17 +01:00
  • c930841f83 f16/f128,u|i128, basic vector support. gingerBill 2016-08-10 10:00:57 +01:00
  • cff5e54ec6 LLVM Binaries gingerBill 2016-08-05 22:10:05 +01:00
  • ba238c569a Strings galore! gingerBill 2016-08-05 21:07:25 +01:00
  • 4a303b5c3e Minor refactor and basic library gingerBill 2016-08-05 15:17:23 +01:00
  • 2aaef48c5c String support gingerBill 2016-08-05 00:54:05 +01:00
  • 19aea1f198 Basic call expression and fix to assignment count checking gingerBill 2016-08-03 22:27:24 +01:00
  • 0e92166d44 Slice creation for SliceExpr gingerBill 2016-08-03 14:17:13 +01:00
  • 41e7cadb8d ret, unreachable, param, deref gingerBill 2016-08-02 20:53:18 +01:00
  • bf3283c889 Massive Refactor and If statements gingerBill 2016-08-02 01:08:36 +01:00
  • e5665a190d Big Refactor to type less :P gingerBill 2016-08-01 13:11:50 +01:00
  • 88e05ad2b2 Basic Comparisons gingerBill 2016-08-01 00:34:15 +01:00
  • 70f6282f41 Variable declaration and assign, unary operators gingerBill 2016-07-31 23:01:42 +01:00
  • 776dc0e8f1 Restart LLVM IR SSA generation This is the third go and I'm going for it! gingerBill 2016-07-30 00:09:30 +01:00
  • 32ab8fcf99 alias and unified parameters lists for procedures and structures. gingerBill 2016-07-25 11:14:25 +01:00
  • 9d8355d361 Branch Statements, if init statement, File parsing errors gingerBill 2016-07-24 22:06:58 +01:00
  • 3fe7fc344d Compound literals and Warnings gingerBill 2016-07-23 11:41:11 +01:00
  • f8fd6fce0b Procedure Literal gingerBill 2016-07-22 16:09:49 +01:00
  • 86c083535f Path validator gingerBill 2016-07-21 10:56:57 +01:00
  • 51d0532c3e Only allow .odin files to be parsed gingerBill 2016-07-21 00:38:15 +01:00
  • cbd82e3c02 Support import files as modules (i.e. import only once) gingerBill 2016-07-21 00:26:14 +01:00
  • aa6a2caecb Random Order File Scope Declaration gingerBill 2016-07-12 23:53:34 +01:00
  • 9f90ff50cf Tags, enclosed proc results and better error handling gingerBill 2016-07-11 00:10:15 +01:00
  • f7a669d342 Initial release version * Code cleanup * Fix some TODOs * Reduce heap allocation use and replace with arena allocation gingerBill 2016-07-09 00:31:57 +01:00
  • 9ba2a6d02c Slices and slice expressions gingerBill 2016-07-08 01:04:57 +01:00
  • 7430008fd7 Initial Commit Original Git Repo "went bad" so I had to restart. gingerBill 2016-07-07 21:47:33 +01:00