diff dmd/backend/iasm.d @ 191:52188e7e3fb5

Fixed deprecated features, now compiles with DMD2.058 Also changed Array allocation policy: Now doesn't reallocate but malloc's, followed by a memcpy (no free). (this fixes a crash while compiling druntime. Same bug in dmd)
author korDen@korDen-pc
date Sun, 25 Mar 2012 03:11:12 +0400
parents 9f4e5ac4f0a3
children eb38fdcb3e62
line wrap: on
line diff
--- a/dmd/backend/iasm.d	Sun Mar 25 01:39:46 2012 +0400
+++ b/dmd/backend/iasm.d	Sun Mar 25 03:11:12 2012 +0400
@@ -797,6 +797,9 @@
 					goto L386_WARNING2;
 				}
 				break;
+
+			default:
+				assert(false);
 	    }
 	}
 
@@ -923,6 +926,9 @@
 				}
 			}
 			break;
+			
+			default:
+				assert(false);
 		}
 		uint usOpcode = ptb.pptb0.usOpcode;
 
@@ -1122,6 +1128,9 @@
 							pc.IFL2 = FL.FLconst;
 						}
 						break;
+						
+					default:
+						assert(false);
 				}
 			}
 				
@@ -1324,7 +1333,10 @@
 				aoptyTmp = aoptyTable3;
 				uSizemaskTmp = cast(ushort)uSizemaskTable3;
 			}
-			goto L1;	
+			goto L1;
+			
+		default:
+			assert(false);
 	}
 L2:
 
@@ -1547,6 +1559,9 @@
 	//printf("usActual = %d\n", usActual);
 	switch (usActual)
 	{
+		default:
+			assert(false);
+			
 	    case 0:
 			ptbRet = pop.ptb ;
 			goto RETURN_IT;
@@ -2204,6 +2219,8 @@
 			default:
 				if (ASM_GET_uSizemask(popnd1.usFlags) == _8) {
 					switch(popnd1.base.val) {
+						default:
+							assert(false);
 						case _AL:
 						case _AH:
 							usRet |= mAX;
@@ -3070,6 +3087,8 @@
 
     switch (amodTable)
     {
+		default:
+			assert(false);
 		case _normal:		// Normal's match with normals
 			switch(amodOp) {
 				case _normal:
@@ -3712,6 +3731,8 @@
 				{
 					switch (tok_save)
 					{
+						default:
+							assert(false);
 						case TOKgt:
 							o1.disp = o1.disp > o2.disp;
 							break;