Browse Source

add dinamic output path

eugeniucarvalho 5 years ago
parent
commit
73d85cd4f4

BIN
build/classes/API/BuildParams.class


+ 3 - 0
build/classes/samples/program_mult_manycore.go

@@ -1,6 +1,9 @@
 // Aplica o back-end do juninho
 @target          : mipsjun 
+
+// Diretorio onde o resultado da compilação será gravado
 @outputDirectory : `C:\Users\EUGENIO CARVALHO\Desktop\tmp\comp`
+
 // Quantidade de palavras de um bloco 32 palavras de 4bytes
 @cacheBlockSize: `32`
 

BIN
build/classes/target/mips/jun/Gen.class


+ 4 - 1
src/API/BuildParams.java

@@ -24,7 +24,10 @@ public class BuildParams {
         params.put(tag, values);
     }
 
-    public static ArrayList<String> Get(String tag) {
+    public static ArrayList<String> Get(String tag) throws Exception {
+        if (!params.containsKey(tag)) {
+            throw new Exception(String.format("Build param `%s` não definido!", tag));
+        }
         return params.get(tag);
     }
 

+ 3 - 0
src/samples/program_mult_manycore.go

@@ -1,6 +1,9 @@
 // Aplica o back-end do juninho
 @target          : mipsjun 
+
+// Diretorio onde o resultado da compilação será gravado
 @outputDirectory : `C:\Users\EUGENIO CARVALHO\Desktop\tmp\comp`
+
 // Quantidade de palavras de um bloco 32 palavras de 4bytes
 @cacheBlockSize: `32`
 

+ 5 - 0
src/target/mips/jun/Gen.java

@@ -97,6 +97,11 @@ public class Gen extends target.mips.Gen {
                     // Atualiza os enderecos de salto do codigo
                     uap.Exec(newCode, null);
                     format = (String) profile.get("filename");
+
+                    if (format == null) {
+                        throw new Exception("Arquivo de saida para o core `" + id + "` não definido!");
+                    }
+
 //                    Utils.WriteFile("\\src\\results\\mipsjun\\" + id + "\\main.dec.txt", code);
                     SaveMips(newCode, base + "\\" + String.format(format, "mips"));
                     SaveDec(newCode, base + "\\" + String.format(format, "dec"));