Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Diff of /sml/trunk/src/MLRISC/x86/emit/x86Asm.sml
ViewVC logotype

Diff of /sml/trunk/src/MLRISC/x86/emit/x86Asm.sml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 694, Thu Jul 27 16:00:25 2000 UTC revision 695, Mon Aug 7 23:57:38 2000 UTC
# Line 316  Line 316 
316          emit ")";          emit ")";
317          emit_region mem )          emit_region mem )
318         )         )
319       and emit_operand8 (I.Direct r) = emit (C.showGPWithType (regmap r, 8))
320         | emit_operand8 opn = emit_operand opn
321     and emit_disp (I.Immed 0) = ()     and emit_disp (I.Immed 0) = ()
322       | emit_disp (I.Immed i) = emitInt32 i       | emit_disp (I.Immed i) = emitInt32 i
323       | emit_disp (I.ImmedLabel lexp) = emit_labexp lexp       | emit_disp (I.ImmedLabel lexp) = emit_labexp lexp
324       | emit_disp _ = error "emit_disp"       | emit_disp _ = error "emit_disp"
325    
326  (*#line 291.7 "x86/x86.md"*)  (*#line 294.7 "x86/x86.md"*)
327     fun stupidGas (I.ImmedLabel lexp) = emit_labexp lexp     fun stupidGas (I.ImmedLabel lexp) = emit_labexp lexp
328       | stupidGas opnd =       | stupidGas opnd =
329         ( emit "*";         ( emit "*";
330         emit_operand opnd )         emit_operand opnd )
331    
332  (*#line 295.7 "x86/x86.md"*)  (*#line 298.7 "x86/x86.md"*)
333     fun isMemOpnd (I.MemReg _) = true     fun isMemOpnd (I.MemReg _) = true
334       | isMemOpnd (I.FDirect f) = true       | isMemOpnd (I.FDirect f) = true
335       | isMemOpnd (I.LabelEA _) = true       | isMemOpnd (I.LabelEA _) = true
# Line 335  Line 337 
337       | isMemOpnd (I.Indexed _) = true       | isMemOpnd (I.Indexed _) = true
338       | isMemOpnd _ = false       | isMemOpnd _ = false
339    
340  (*#line 301.7 "x86/x86.md"*)  (*#line 304.7 "x86/x86.md"*)
341     fun chop fbinOp = let     fun chop fbinOp = let
342    
343  (*#line 302.15 "x86/x86.md"*)  (*#line 305.15 "x86/x86.md"*)
344            val n = size fbinOp            val n = size fbinOp
345         in         in
346            (            (
# Line 349  Line 351 
351         end         end
352    
353    
354  (*#line 308.7 "x86/x86.md"*)  (*#line 311.7 "x86/x86.md"*)
355     val emit_dst = emit_operand     val emit_dst = emit_operand
356    
357  (*#line 309.7 "x86/x86.md"*)  (*#line 312.7 "x86/x86.md"*)
358     val emit_src = emit_operand     val emit_src = emit_operand
359    
360  (*#line 310.7 "x86/x86.md"*)  (*#line 313.7 "x86/x86.md"*)
361     val emit_opnd = emit_operand     val emit_opnd = emit_operand
362    
363  (*#line 311.7 "x86/x86.md"*)  (*#line 314.7 "x86/x86.md"*)
364       val emit_opnd8 = emit_operand8
365    
366    (*#line 315.7 "x86/x86.md"*)
367     val emit_rsrc = emit_operand     val emit_rsrc = emit_operand
368    
369  (*#line 312.7 "x86/x86.md"*)  (*#line 316.7 "x86/x86.md"*)
370     val emit_lsrc = emit_operand     val emit_lsrc = emit_operand
371    
372  (*#line 313.7 "x86/x86.md"*)  (*#line 317.7 "x86/x86.md"*)
373     val emit_addr = emit_operand     val emit_addr = emit_operand
374    
375  (*#line 314.7 "x86/x86.md"*)  (*#line 318.7 "x86/x86.md"*)
376     val emit_src1 = emit_operand     val emit_src1 = emit_operand
377     fun emitInstr' instr =     fun emitInstr' instr =
378         (         (
# Line 492  Line 497 
497          ( emit "set";          ( emit "set";
498          emit_cond cond;          emit_cond cond;
499          emit "\t";          emit "\t";
500          emit_opnd opnd )          emit_opnd8 opnd )
501        | I.CMOV{cond, src, dst} =>        | I.CMOV{cond, src, dst} =>
502          ( emit "cmov";          ( emit "cmov";
503          emit_cond cond;          emit_cond cond;

Legend:
Removed from v.694  
changed lines
  Added in v.695

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0