Commit Graph

54 Commits

Author SHA1 Message Date
Minero Aoki f54cfaab75 fix preproc tags
git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4303 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-27 16:09:22 +00:00
Minero Aoki 4ec1db3eea fix preproc tags
git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4302 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-27 08:26:27 +00:00
Minero Aoki 9ada80d267 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: refactoring: rename method: doesIndirectAccess -> shouldUsePLT.
git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4299 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-21 10:15:42 +00:00
Minero Aoki eedb1294e3 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: assign address for gvar.
* net/loveruby/cflat/entity/Entity.java: accept imm address.


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4298 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-21 08:15:21 +00:00
Minero Aoki b26702992c * net/loveruby/cflat/sysdep/GNULinker.java: parameterize linker path.
git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4296 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-20 18:48:32 +00:00
Minero Aoki ee8432d4fa r5104@macbookpro: aamine | 2009-06-13 22:43:16 +0900
* rename class: AssemblyFile -> AssemblyCode.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4292 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-13 13:46:36 +00:00
Minero Aoki 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.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4291 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-13 13:46:35 +00:00
Minero Aoki ec67762360 add preproc tag
git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4287 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-13 06:31:18 +00:00
Minero Aoki 062c8b831a preproc tags added
git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4285 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-07 21:36:56 +00:00
Minero Aoki 092ff61e93 add preproc tags
git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4284 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-07 20:40:38 +00:00
Minero Aoki 592bff7634 r5053@macbookpro: aamine | 2009-06-08 05:39:37 +0900
spacing change only


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4283 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-07 20:40:07 +00:00
Minero Aoki 6ba72a960e preproc tags added
git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4282 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-07 05:48:21 +00:00
Minero Aoki 7c9845ecaa * net/loveruby/cflat/sysdep/x86/CodeGenerator.java (StackFrameInfo): shorten code using CodeGenerator constant directly.
git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4281 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-07 04:42:21 +00:00
Minero Aoki 7d4223ba6a just spacing changes
git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4280 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-07 04:36:00 +00:00
Minero Aoki 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.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4279 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-06 19:17:42 +00:00
Minero Aoki 8f9df4fb03 r5033@macbookpro: aamine | 2009-06-07 03:17:50 +0900
* sysdep/x86/CodeGenerator.java (compileFunctionBody): fix offset bug.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4278 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-06 19:17:42 +00:00
Minero Aoki 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.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4277 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-06 19:17:41 +00:00
Minero Aoki 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.


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4275 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-06 12:28:29 +00:00
Minero Aoki 6775112ebf r5013@macbookpro: aamine | 2009-06-01 06:40:51 +0900
* net/loveruby/cflat/sysdep/x86/CodeGenerator.java: refactoring: rename method: save -> store.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4274 1b9489fe-b721-0410-924e-b54b9192deb8
2009-06-06 07:29:22 +00:00
Minero Aoki 23d0fb9091 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java (load, save): reduce # of arguments.
git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4272 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-31 20:43:15 +00:00
Minero Aoki 1a7d027bee r5009@macbookpro: aamine | 2009-06-01 03:56:40 +0900
* net/loveruby/cflat/sysdep/x86/CodeGenerator.java (Bin): optimize more patterns.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4271 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-31 18:57:00 +00:00
Minero Aoki 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.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4270 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-31 13:34:00 +00:00
Minero Aoki 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.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4267 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-26 17:06:04 +00:00
Minero Aoki 9805e5c958 change preproc tags
git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4266 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-26 07:53:13 +00:00
Minero Aoki 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.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4264 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-26 07:52:44 +00:00
Minero Aoki 144393f6d4 r4985@macbookpro: aamine | 2009-05-26 15:16:21 +0900
* net/loveruby/cflat/sysdep/x86/AssemblyFile.java: refactoring: apply strict visibility.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4263 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-26 07:52:42 +00:00
Minero Aoki 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.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4262 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-26 07:52:42 +00:00
Minero Aoki 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.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4261 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-26 04:41:56 +00:00
Minero Aoki 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.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4260 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-26 04:24:48 +00:00
Minero Aoki 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.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4259 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-26 04:24:46 +00:00
Minero Aoki 039483da62 r4970@macbookpro: aamine | 2009-05-26 13:11:26 +0900
* net/loveruby/cflat/asm/AsmComment.java -> Comment.java
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4258 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-26 04:24:45 +00:00
Minero Aoki 53e8ae748d fix preproc tag only
git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4252 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-24 14:37:24 +00:00
Minero Aoki 9fc50d2179 fix preproc tags only
git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4251 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-24 14:08:43 +00:00
Minero Aoki 64e91a4737 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: refactoring: reorder methods.
* net/loveruby/cflat/sysdep/x86/CodeGenerator.java: refactoring: inlining #testCond.


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4248 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-24 13:44:10 +00:00
Minero Aoki 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.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4247 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-24 12:56:38 +00:00
Minero Aoki ad7af66f8b r4896@macbookpro: aamine | 2009-05-24 02:08:03 +0900
* utilize final field.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4236 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-23 17:08:24 +00:00
Minero Aoki 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.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4234 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-23 16:18:03 +00:00
Minero Aoki 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.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4232 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-23 14:31:37 +00:00
Minero Aoki 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.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4223 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-17 19:14:03 +00:00
Minero Aoki 17e2199db8 r4869@macbookpro: aamine | 2009-05-18 03:50:00 +0900
fix preproc tag


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4222 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-17 19:14:02 +00:00
Minero Aoki 3ddae38cb1 r4846@macbookpro: aamine | 2009-05-16 18:12:26 +0900
* net/loveruby/cflat/sysdep/x86/CodeGenerator.java: fix typo.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4215 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-17 02:27:35 +00:00
Minero Aoki e2536e611e r4845@macbookpro: aamine | 2009-05-16 18:04:25 +0900
* net/loveruby/cflat/sysdep/x86/CodeGenerator.java: parameterize naturalType.
 * net/loveruby/cflat/sysdep/X86Linux.java: provide parameter.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4214 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-17 02:27:34 +00:00
Minero Aoki ed319a4bc0 r4844@macbookpro: aamine | 2009-05-16 17:50:02 +0900
* net/loveruby/cflat/sysdep/x86/AssemblyFile.java: use Type instead of size.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4213 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-17 02:27:34 +00:00
Minero Aoki 84626ea57e r4843@macbookpro: aamine | 2009-05-16 17:21:40 +0900
* net/loveruby/cflat/asm/Register.java: use enum for register name.
 * net/loveruby/cflat/sysdep/x86/RegKind.java: new enum.
 * net/loveruby/cflat/sysdep/x86/Register.java: move system dependent code to sysdep/x86/Register.
 * net/loveruby/cflat/asm/IndirectMemoryReference.java: reduce dependency to Register method.
 * net/loveruby/cflat/sysdep/x86/AssemblyFile.java: use RegKind.
 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: reg(*) -> ax(), bx(), cx(), ...
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4212 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-17 02:27:33 +00:00
Minero Aoki 189c089088 r4839@macbookpro: aamine | 2009-05-13 03:24:14 +0900
* compiler/Compiler.java: grand refactoring.
 * compiler/Options.java: refactoring: avoid ping-pong call with SourceFile.
 * compiler/SourceFile.java: ditto.
 * ast/AST.java: does not contain a TypeTable.
 * compiler/IRGenerator.java
 * compiler/TypeResolver.java
 * compiler/TypeChecker.java
 * sysdep/Linker.java: change arg order.
 * sysdep/GNULinker.java: ditto.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4210 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-12 18:24:47 +00:00
Minero Aoki 9c8af78a97 r4838@macbookpro: aamine | 2009-05-13 01:23:44 +0900
* net/loveruby/cflat/utils/CommandUtils.java: accept a list of string instead of CommandArg.
 * net/loveruby/cflat/sysdep/Linker.java: ditto.
 * net/loveruby/cflat/sysdep/LinkerOptions.java: ditto.
 * net/loveruby/cflat/sysdep/GNULinker.java: ditto.
 * net/loveruby/cflat/sysdep/AssemblerOptions.java: ditto.
 * net/loveruby/cflat/sysdep/GNUAssembler.java: ditto.
 * net/loveruby/cflat/utils/CommandArgStr.java -> compiler/LdOption.java
 * net/loveruby/cflat/utils/CommandArg.java -> compiler/LdArg.java
 * net/loveruby/cflat/compiler/SourceFile.java: CommandArg -> LdArg.
 * net/loveruby/cflat/compiler/Compiler.java: ditto.
 * net/loveruby/cflat/compiler/Options.java: ditto.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4209 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-12 18:24:46 +00:00
Minero Aoki c26eb88f2e r4834@macbookpro: aamine | 2009-05-11 03:17:05 +0900
* net/loveruby/cflat/compiler/Compiler.java: objectify assembler.
 * net/loveruby/cflat/compiler/Compiler.java: objectify linker.
 * net/loveruby/cflat/compiler/Options.java: provide #assembler, #asOptions, #linker, #ldOptions.
 * net/loveruby/cflat/sysdep/x86/X86Linux.java -> sysdep/X86Linux.java
 * net/loveruby/cflat/sysdep/Platform.java: provide #assembler, #linker.
 * net/loveruby/cflat/sysdep/X86Linux.java: ditto.
 * net/loveruby/cflat/sysdep/Assembler.java: new interface.
 * net/loveruby/cflat/sysdep/AssemblerOptions.java: new class.
 * net/loveruby/cflat/sysdep/GNUAssembler.java: new Assembler implementation.
 * net/loveruby/cflat/sysdep/Linker.java: new interface.
 * net/loveruby/cflat/sysdep/LinkerOptions.java: new clas.
 * net/loveruby/cflat/sysdep/GNULinker.java: new Linker implementation.
 * net/loveruby/cflat/utils/CommandUtils.java: new class.
 * net/loveruby/cflat/compiler/LdArg.java -> utils/CommandArg.java
 * net/loveruby/cflat/compiler/LdOption.java -> utils/CommandArgStr.java
 * net/loveruby/cflat/compiler/SourceFile.java: implements CommandArg.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4207 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-10 18:18:52 +00:00
Minero Aoki 21f7253fc9 r4827@macbookpro: aamine | 2009-05-11 01:47:38 +0900
* net/loveruby/cflat/codegenerator/CodeGenerator.java -> net/loveruby/cflat/sysdep
 * net/loveruby/cflat/codegenerator/CodeGeneratorOptions.java -> net/loveruby/cflat/sysdep
 * net/loveruby/cflat/sysdep/Platform.java: ditto.
 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: ditto.
 * net/loveruby/cflat/sysdep/x86/X86Linux.java: ditto.
 * net/loveruby/cflat/compiler/Compiler.java: ditto.
 * net/loveruby/cflat/compiler/Options.java: ditto.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4205 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-10 16:49:48 +00:00
Minero Aoki 3a7d40e63d r4826@macbookpro: aamine | 2009-05-11 01:40:01 +0900
* net/loveruby/cflat/sysdep/x86/CodeGenerator.java: use PeepholeOptimizer directly.
 * net/loveruby/cflat/asm/PeepholeOptimizer.java -> net/loveruby/cflat/sysdep/x86
 * net/loveruby/cflat/asm/AsmOptimizer.java: removed.
 * net/loveruby/cflat/codegenerator/CodeGeneratorOptions.java: should not provide PeepholeOptimizer, just provide optimizationLevel.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4204 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-10 16:49:47 +00:00
Minero Aoki 703b44faf5 r4824@macbookpro: aamine | 2009-05-11 01:09:13 +0900
* net/loveruby/cflat/compiler/IRGenerator.java: generate address expression for LHS expr.
 * net/loveruby/cflat/sysdep/x86/CodeGenerator.java: remove #compileLHS.  Just compile LHS expr.
 * net/loveruby/cflat/ir/Addr.java: is a constant address now.
 * net/loveruby/cflat/ir/Var.java: is not a constant address now.
 * net/loveruby/cflat/ir/Expr.java: new base method #addressNode.
 * net/loveruby/cflat/ir/Mem.java: override #addressNode.
 * net/loveruby/cflat/ir/Var.java: ditto.
 * net/loveruby/cflat/ir/Addr.java: ditto.
 * net/loveruby/cflat/ir/Expr.java: new base method #getEntityForce.
 * net/loveruby/cflat/ir/Var.java: override #getEntityForce.
 * net/loveruby/cflat/ir/Addr.java: ditto.
 * net/loveruby/cflat/ir/Call.java: get function entity by Expr#getEntityForce.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4202 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-10 16:49:45 +00:00