Commit Graph

  • ec0c258ed7
    Merge d77950b5ec into f339ad28bc #4 Huang Guiyang 2018-07-20 14:47:28 +0000
  • d77950b5ec fix class Parameter #4 hgy 2018-07-20 22:46:22 +0800
  • 41a3be1f66 add support for ubuntu hgy 2017-07-09 18:50:07 +0800
  • fe99e16d70 Merge 8e1121c4af into f339ad28bc #2 四条眉毛 2016-10-21 09:42:34 +0000
  • 8e1121c4af Merge pull request #3 from chenzl25/master #2 绝云 2016-10-16 00:38:03 +0800
  • c4157f1ea5 fix forNode bug dylan 2016-10-14 21:19:41 +0800
  • 35e7866857 Merge pull request #2 from chenzl25/master 绝云 2016-08-26 14:14:04 +0800
  • cde5ef884a fix VariableNode constant entity bug 陈梓麟 2016-08-25 21:50:27 +0800
  • 54a2ba1db4 355873c1ea (commitcomment-18684546) leungwensen 2016-08-19 09:35:12 +0800
  • 8f155a6c7c add link for [leungwensen/cbc-ubuntu-64bit] leungwensen 2016-05-16 00:12:35 +0800
  • 74de3334c6 bugfix: echo leungwensen 2016-05-16 00:02:08 +0800
  • d7334530be finishing document and bugfixes, etc. leungwensen 2016-05-15 23:25:18 +0800
  • 9891753df3 do not run source $HOME/.bashrc while updating image leungwensen 2016-05-15 20:43:08 +0800
  • 7ff53786f8 bugfix in executing install.sh leungwensen 2016-05-15 20:33:20 +0800
  • e58962dde0 bugfix leungwensen 2016-05-15 20:26:06 +0800
  • 0b2216be1d add comments to Dockerfile leungwensen 2016-05-15 20:08:47 +0800
  • d871c1fd94 remove the old README file leungwensen 2016-05-15 20:01:38 +0800
  • 897710228c add documents and Dockerfile leungwensen 2016-05-15 20:01:07 +0800
  • 3dcb548f4e build leungwensen 2016-05-15 11:04:18 +0000
  • c01e3ff69b for ubuntu 64bit leungwensen 2016-05-15 18:43:39 +0800
  • f339ad28bc new target "dist" master Minero Aoki 2009-07-19 05:47:30 +0000
  • 2888c3a4f5 version 1.0.1 1.0.1 Minero Aoki 2009-07-19 05:41:42 +0000
  • 024aec421e do not rely on subversion metadata. Minero Aoki 2009-07-19 05:28:03 +0000
  • f527d78ce6 * test/test_cbc.sh: do not override CBC environment. Minero Aoki 2009-07-19 05:22:21 +0000
  • ca0cf20012 use install command instead of cp command to set permissions correctly. Minero Aoki 2009-07-19 04:33:49 +0000
  • 28db218d8c version 1.0.0 1.0.0 Minero Aoki 2009-07-05 20:22:57 +0000
  • 8cc69f9194 * install.sh: tested. Minero Aoki 2009-07-05 20:22:25 +0000
  • 53291f5646 * net/loveruby/cflat/compiler/Options.java: --version did not print "\n". Minero Aoki 2009-07-05 20:22:06 +0000
  • 41d6488cfa * net/loveruby/cflat/compiler/Options.java: --version did not print "\n". Minero Aoki 2009-07-05 20:22:00 +0000
  • f54cfaab75 fix preproc tags Minero Aoki 2009-06-27 16:09:22 +0000
  • 4ec1db3eea fix preproc tags Minero Aoki 2009-06-27 08:26:27 +0000
  • 9ada80d267 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: refactoring: rename method: doesIndirectAccess -> shouldUsePLT. Minero Aoki 2009-06-21 10:15:42 +0000
  • eedb1294e3 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: assign address for gvar. * net/loveruby/cflat/entity/Entity.java: accept imm address. Minero Aoki 2009-06-21 08:15:21 +0000
  • 274b12a6cd * net/loveruby/cflat/compiler/Options.java: rename option: --readonly-plt -> --readonly-got. Minero Aoki 2009-06-21 08:14:50 +0000
  • b26702992c * net/loveruby/cflat/sysdep/GNULinker.java: parameterize linker path. Minero Aoki 2009-06-20 18:48:32 +0000
  • e1a73e7875 * import/stdlib.hb: add system() prototype. Minero Aoki 2009-06-20 18:47:38 +0000
  • 498fbd1a3c * lib/Makefile: use 's' option to create index. Minero Aoki 2009-06-17 15:46:31 +0000
  • 578e495480 r5116@macbookpro: aamine | 2009-06-15 01:05:26 +0900 * net/loveruby/cflat/compiler/Options.java (parseCommaSeparatedOptions): AbstractList does not support #remove. Minero Aoki 2009-06-16 07:43:21 +0000
  • ee8432d4fa r5104@macbookpro: aamine | 2009-06-13 22:43:16 +0900 * rename class: AssemblyFile -> AssemblyCode. Minero Aoki 2009-06-13 13:46:36 +0000
  • 0837912b64 r5103@macbookpro: aamine | 2009-06-13 22:37:55 +0900 * net/loveruby/cflat/entity/ToplevelScope.java: move #definedGlobalVariables and #definedCommonSymbols to IR. * net/loveruby/cflat/ir/IR.java: ditto. * net/loveruby/cflat/ir/IR.java: new method #isGlobalVariableDefined. * net/loveruby/cflat/ir/IR.java: new method #isCommonSymbolDefined. * net/loveruby/cflat/ir/IR.java: new method #isStringLiteralDefined. * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: use these methods. Minero Aoki 2009-06-13 13:46:35 +0000
  • 6fef2ad6f7 fix copyright and JDK version. Minero Aoki 2009-06-13 08:50:55 +0000
  • fd591cf2b7 r5100@macbookpro: aamine | 2009-06-13 17:42:06 +0900 * net/loveruby/cflat/utils/CommandUtils.java: better error message. Minero Aoki 2009-06-13 08:42:32 +0000
  • ec67762360 add preproc tag Minero Aoki 2009-06-13 06:31:18 +0000
  • beb17f1c5c add tests for AsmUtils. Minero Aoki 2009-06-13 06:30:57 +0000
  • 062c8b831a preproc tags added Minero Aoki 2009-06-07 21:36:56 +0000
  • 092ff61e93 add preproc tags Minero Aoki 2009-06-07 20:40:38 +0000
  • 592bff7634 r5053@macbookpro: aamine | 2009-06-08 05:39:37 +0900 spacing change only Minero Aoki 2009-06-07 20:40:07 +0000
  • 6ba72a960e preproc tags added Minero Aoki 2009-06-07 05:48:21 +0000
  • 7c9845ecaa * net/loveruby/cflat/sysdep/x86/CodeGenerator.java (StackFrameInfo): shorten code using CodeGenerator constant directly. Minero Aoki 2009-06-07 04:42:21 +0000
  • 7d4223ba6a just spacing changes Minero Aoki 2009-06-07 04:36:00 +0000
  • 6833982356 r5034@macbookpro: aamine | 2009-06-07 04:17:22 +0900 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: refactoring: extract class: StackFrameInfo. * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: refactoring: extract method: generateFunctionBody. net/loveruby/cflat/entity/DefinedFunction.java: new method #lvarScope. Minero Aoki 2009-06-06 19:17:42 +0000
  • 8f9df4fb03 r5033@macbookpro: aamine | 2009-06-07 03:17:50 +0900 * sysdep/x86/CodeGenerator.java (compileFunctionBody): fix offset bug. Minero Aoki 2009-06-06 19:17:42 +0000
  • 4ac683c9d7 r5032@macbookpro: aamine | 2009-06-07 03:03:18 +0900 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: refactoring compileFunctionBody. * net/loveruby/cflat/sysdep/x86/AssemblyFile.java: objectify VirtualStack. * net/loveruby/cflat/asm/IndirectMemoryReference.java: new method .relocatable to generate relocatable IndirectMemoryReference. * net/loveruby/cflat/asm/MemoryReference.java: new method #fixOffset. * net/loveruby/cflat/asm/DirectMemoryReference.java: new method #fixOffset. * net/loveruby/cflat/asm/Assembly.java: remove fixStackOffset. * net/loveruby/cflat/asm/Operand.java: ditto. Minero Aoki 2009-06-06 19:17:41 +0000
  • 0f036467ce r5030@macbookpro: aamine | 2009-06-06 21:36:52 +0900 * lib/alloca.s: shorten assembly. Minero Aoki 2009-06-06 12:37:05 +0000
  • 4cf7bd2ae8 * sysdep/x86/CodeGenerator.java: refactoring: rename method: allocateParameters -> locateParameters. * sysdep/x86/CodeGenerator.java: refactoring: rename method: allocateLocalVariablesTemp -> locateLocalVariables. * sysdep/x86/CodeGenerator.java: refactoring: rename method: allocateLocalVariables -> fixLocalVariableOffsets. Minero Aoki 2009-06-06 12:28:29 +0000
  • 6775112ebf r5013@macbookpro: aamine | 2009-06-01 06:40:51 +0900 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: refactoring: rename method: save -> store. Minero Aoki 2009-06-06 07:29:22 +0000
  • 23d0fb9091 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java (load, save): reduce # of arguments. Minero Aoki 2009-05-31 20:43:15 +0000
  • 1a7d027bee r5009@macbookpro: aamine | 2009-06-01 03:56:40 +0900 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java (Bin): optimize more patterns. Minero Aoki 2009-05-31 18:57:00 +0000
  • 694aa209f3 r4998@macbookpro: aamine | 2009-05-31 22:33:21 +0900 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: refactoring: rename method. * net/loveruby/cflat/sysdep/x86/CodeGenerator.java (Int): simplify code. Minero Aoki 2009-05-31 13:34:00 +0000
  • 3b566ad27c r4994@macbookpro: aamine | 2009-05-27 01:59:19 +0900 * net/loveruby/cflat/sysdep/x86/AssemblyFile.java: remove unused methods. * net/loveruby/cflat/sysdep/x86/AssemblyFile.java: reduce Type argument. * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: follow changes. Minero Aoki 2009-05-26 17:06:04 +0000
  • 9805e5c958 change preproc tags Minero Aoki 2009-05-26 07:53:13 +0000
  • f5c2ed0b30 r4987@macbookpro: aamine | 2009-05-26 16:52:33 +0900 * net/loveruby/cflat/asm/NamedSymbol.java (dump): dump name as string. Minero Aoki 2009-05-26 07:52:45 +0000
  • 8049035053 r4986@macbookpro: aamine | 2009-05-26 16:07:49 +0900 * net/loveruby/cflat/compiler/Compiler.java: --dump-asm now dumps AssemblyFile. * net/loveruby/cflat/compiler/Compiler.java: new option --print-asm, prints assembly source text. * net/loveruby/cflat/compiler/CompilerMode.java: new enum PrintAsm. * net/loveruby/cflat/compiler/Options.java: new option --print-asm. * net/loveruby/cflat/sysdep/x86/AssemblyFile.java: new method #dump. * net/loveruby/cflat/sysdep/x86/Register.java: new method #dump. * net/loveruby/cflat/asm: new method #dump. Minero Aoki 2009-05-26 07:52:44 +0000
  • 144393f6d4 r4985@macbookpro: aamine | 2009-05-26 15:16:21 +0900 * net/loveruby/cflat/sysdep/x86/AssemblyFile.java: refactoring: apply strict visibility. Minero Aoki 2009-05-26 07:52:42 +0000
  • 1729dbaac0 r4984@macbookpro: aamine | 2009-05-26 15:11:36 +0900 * net/loveruby/cflat/compiler/Compiler.java: change CodeGenerator output: String -> AssemblyFile. * net/loveruby/cflat/sysdep/AssemblyFile.java: new interface. * net/loveruby/cflat/sysdep/x86/AssemblyFile.java: implement it. * net/loveruby/cflat/sysdep/CodeGenerator.java: #generate returns AssemblyFile. * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: ditto. Minero Aoki 2009-05-26 07:52:42 +0000
  • b38ec78fdc r4982@macbookpro: aamine | 2009-05-26 13:40:29 +0900 * net/loveruby/cflat/sysdep/x86: rename class: RegKind -> RegisterClass. * net/loveruby/cflat/sysdep/x86: follow it. Minero Aoki 2009-05-26 04:41:56 +0000
  • a1832aca6b r4972@macbookpro: aamine | 2009-05-26 13:24:13 +0900 * net/loveruby/cflat/asm: refactoring: rename class: AsmStatistics -> Statistics. * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: follow it. Minero Aoki 2009-05-26 04:24:48 +0000
  • aabbca6e13 r4971@macbookpro: aamine | 2009-05-26 13:19:10 +0900 * net/loveruby/cflat/asm: refactoring: rename class: AsmOperand -> Operand. * net/loveruby/cflat/asm: follow it. * net/loveruby/cflat/sysdep/x86: follow it. * net/loveruby/cflat/ir: follow it. * net/loveruby/cflat/entity: follow it. Minero Aoki 2009-05-26 04:24:46 +0000
  • 039483da62 r4970@macbookpro: aamine | 2009-05-26 13:11:26 +0900 * net/loveruby/cflat/asm/AsmComment.java -> Comment.java Minero Aoki 2009-05-26 04:24:45 +0000
  • d50cb63ee5 r4969@macbookpro: aamine | 2009-05-26 12:58:04 +0900 * net/loveruby/cflat/compiler/Compiler.java (writeFile): treat "-" as stdout. Minero Aoki 2009-05-26 04:24:44 +0000
  • e593745d2e r4968@macbookpro: aamine | 2009-05-26 12:48:57 +0900 * net/loveruby/cflat/compiler/Compiler.java (dumpAsm): do not print extra '\n'. Minero Aoki 2009-05-26 04:24:43 +0000
  • 7ce8034b0f r4967@macbookpro: aamine | 2009-05-26 12:21:40 +0900 * net/loveruby/cflat/compiler/Options.java: check unknown file types. * net/loveruby/cflat/compiler/SourceFile.java: new method #isKnownFileType. Minero Aoki 2009-05-26 04:24:42 +0000
  • e6b6f20d24 r4966@macbookpro: aamine | 2009-05-26 11:59:25 +0900 * net/loveruby/cflat/compiler/Options.java: allow --verbose-asm too. Minero Aoki 2009-05-26 04:24:41 +0000
  • c30f91a58a r4964@macbookpro: aamine | 2009-05-26 11:50:29 +0900 * net/loveruby/cflat/compiler/Options.java: --verbose-asm -> -fverbose-asm Minero Aoki 2009-05-26 02:52:20 +0000
  • 53e8ae748d fix preproc tag only Minero Aoki 2009-05-24 14:37:24 +0000
  • 9fc50d2179 fix preproc tags only Minero Aoki 2009-05-24 14:08:43 +0000
  • 64e91a4737 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: refactoring: reorder methods. * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: refactoring: inlining #testCond. Minero Aoki 2009-05-24 13:44:10 +0000
  • b9ad38ef16 r4942@macbookpro: aamine | 2009-05-24 21:56:17 +0900 * net/loveruby/cflat/compiler/IRGenerator.java: do not use Expr#isConstantAddress, it confuses semantics. * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: ditto. * net/loveruby/cflat/ir/Expr.java: introduce new methods #isVar and #isAddr, instead of #isConstantAddress. * net/loveruby/cflat/ir/Addr.java: override #isAddr. * net/loveruby/cflat/ir/Var.java: override #isVar. Minero Aoki 2009-05-24 12:56:38 +0000
  • 118d27b4ef r4941@macbookpro: aamine | 2009-05-24 21:54:18 +0900 * net/loveruby/cflat/ast: remove useless methods: ExprNode#isConstantAddress. Minero Aoki 2009-05-24 12:56:37 +0000
  • de2d14c1fb modify preproc range Minero Aoki 2009-05-24 12:29:15 +0000
  • 2871c6d19d add preproc tags. Minero Aoki 2009-05-24 12:18:09 +0000
  • 4d889a2588 r4907@macbookpro: aamine | 2009-05-24 20:23:14 +0900 * net/loveruby/cflat/compiler/IRGenerator.java (Dereference): do not generate Mem for unloadable object (implicit address generation handling). * net/loveruby/cflat/ast: dump #type for LHS nodes. * net/loveruby/cflat/ast/AddressNode.java: do not inherit UnaryOpNode. Minero Aoki 2009-05-24 11:23:29 +0000
  • 0fd4bbfad3 fix preproc tag Minero Aoki 2009-05-24 10:23:30 +0000
  • bfacf5e6c1 r4903@macbookpro: aamine | 2009-05-24 19:22:57 +0900 * net/loveruby/cflat/compiler/TypeResolver.java: now 3 pathes (define, resolve entities, resolve expr) are not required; just use old 2 pathes (define, resolve). Old TypeResolver fixed a type of AddressNode, it requires 3 path. But current implementation fixes a type of AddressNode in DereferenceChecker, we do not need 3 path. * net/loveruby/cflat/ast/AST.java: #entities -> #definitions. * net/loveruby/cflat/ast/AST.java: new method #entities, it returns #definitions + #declarations. * net/loveruby/cflat/compiler/TypeResolver.java: follow it. * net/loveruby/cflat/compiler/LocalResolver.java: follow it. Minero Aoki 2009-05-24 10:23:12 +0000
  • bdfc0de55c add preproc tags. Minero Aoki 2009-05-24 06:36:14 +0000
  • e27f329f98 r4898@macbookpro: aamine | 2009-05-24 11:57:29 +0900 * net/loveruby/cflat/compiler/IRGenerator.java (If): refactoring: increase readability. Minero Aoki 2009-05-24 02:57:48 +0000
  • ad7af66f8b r4896@macbookpro: aamine | 2009-05-24 02:08:03 +0900 * utilize final field. Minero Aoki 2009-05-23 17:08:24 +0000
  • c7254ff547 r4893@macbookpro: aamine | 2009-05-24 01:17:52 +0900 * net/loveruby/cflat/compiler/IRGenerator.java: reorder methods. Minero Aoki 2009-05-23 16:18:04 +0000
  • 0f12ee78f1 r4892@macbookpro: aamine | 2009-05-24 00:41:44 +0900 * net/loveruby/cflat/ir: rename class: BranchIf -> CJump. * net/loveruby/cflat/ir/IRVisitor.java: follow it. * net/loveruby/cflat/compiler/IRGenerator.java: ditto. * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: ditto. Minero Aoki 2009-05-23 16:18:03 +0000
  • 1e3eae4634 r4890@macbookpro: aamine | 2009-05-24 00:00:20 +0900 * net/loveruby/cflat/compiler/IRGenerator.java: refactoring: reorder stmts. Minero Aoki 2009-05-23 15:00:29 +0000
  • a54e95aa16 r4887@macbookpro: aamine | 2009-05-23 23:30:32 +0900 * net/loveruby/cflat/compiler/IRGenerator.java: refactoring: use reverse(node.args) instead of ListIterator. * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: ditto. * net/loveruby/cflat/utils/ListUtils.java: new utility class. * net/loveruby/cflat/ast/FuncallNode.java: remove #finalArgs. * net/loveruby/cflat/ir/Call.java: ditto. * net/loveruby/cflat/ast/FuncallNode.java: refactoring: rename method: arguments -> args. * net/loveruby/cflat/compiler/Visitor.java: follow it. * net/loveruby/cflat/compiler/TypeChecker.java: ditto. Minero Aoki 2009-05-23 14:31:37 +0000
  • e002c1089a r4884@macbookpro: aamine | 2009-05-23 22:30:20 +0900 * net/loveruby/cflat/parser/Parser.jj: now NULL is not a reserved word. * import/stddef.hb: define const NULL. Minero Aoki 2009-05-23 14:30:54 +0000
  • 92ed010477 new library Minero Aoki 2009-05-23 14:09:28 +0000
  • 717bd630c9 * net/loveruby/cflat/compiler/IRGenerator.java: refactoring: rename method: deref -> mem * net/loveruby/cflat/type/ArrayType.java: remove useless definition of #isScalar. Minero Aoki 2009-05-23 13:22:14 +0000
  • 2bca02006e * net/loveruby/cflat/compiler/IRGenerator.java: refactoring: extract method: #bin. * net/loveruby/cflat/compiler/IRGenerator.java: refactoring: extract method: #isPointerDiff. * net/loveruby/cflat/compiler/IRGenerator.java: refactoring: extract method: #isPointerArithmetic. * net/loveruby/cflat/type/TypeTable.java: new method #longSize. * net/loveruby/cflat/ast/ExprNode.java: remove unused method #baseSize. Minero Aoki 2009-05-23 12:34:09 +0000
  • db59955467 Add preproc tags. Attach location to all Assign. Minero Aoki 2009-05-21 23:20:09 +0000
  • 68332ee470 add preproc tags Minero Aoki 2009-05-21 23:19:00 +0000
  • 7af5ebc4a9 r4875@macbookpro: aamine | 2009-05-18 05:10:22 +0900 * net/loveruby/cflat/compiler/TypeChecker.java: allow ptr-ptr. * net/loveruby/cflat/compiler/IRGenerator.java: implement ptr-ptr. * net/loveruby/cflat/type/VoidType.java: VoidType#size is 1. * net/loveruby/cflat/ast/ExprNode.java: new helper method #baseType. Minero Aoki 2009-05-17 20:10:28 +0000
  • e8f60b1e9f add preproc tag Minero Aoki 2009-05-17 19:30:00 +0000
  • 68c4a0104b r4870@macbookpro: aamine | 2009-05-18 03:51:57 +0900 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java (optimize): wrongly did not optimize asm code. Minero Aoki 2009-05-17 19:14:03 +0000