XBT_INFO("Displaying task %s", SD_task_get_name(task));
statename = bprintf("%s %s %s %s %s %s %s %s",
- (task->state & SD_NOT_SCHEDULED ? "not scheduled" :
+ (task->state == SD_NOT_SCHEDULED ? "not scheduled" :
""),
- (task->state & SD_SCHEDULABLE ? "schedulable" : ""),
- (task->state & SD_SCHEDULED ? "scheduled" : ""),
- (task->state & SD_RUNNABLE ? "runnable" :
+ (task->state == SD_SCHEDULABLE ? "schedulable" : ""),
+ (task->state == SD_SCHEDULED ? "scheduled" : ""),
+ (task->state == SD_RUNNABLE ? "runnable" :
"not runnable"),
- (task->state & SD_IN_FIFO ? "in fifo" : ""),
- (task->state & SD_RUNNING ? "running" : ""),
- (task->state & SD_DONE ? "done" : ""),
- (task->state & SD_FAILED ? "failed" : ""));
+ (task->state == SD_IN_FIFO ? "in fifo" : ""),
+ (task->state == SD_RUNNING ? "running" : ""),
+ (task->state == SD_DONE ? "done" : ""),
+ (task->state == SD_FAILED ? "failed" : ""));
XBT_INFO(" - state: %s", statename);
free(statename);
"Task %s is not a SD_TASK_COMP_PAR_AMDAHL typed task."
"Cannot use this function.",
SD_task_get_name(task));
-
task->computation_amount = xbt_new0(double, ws_count);
task->communication_amount = xbt_new0(double, ws_count * ws_count);
+ if (task->workstation_list)
+ xbt_free(task->workstation_list);
task->workstation_nb = ws_count;
task->workstation_list = xbt_new0(SD_workstation_t, ws_count);
task->workstation_list[i];
before->workstation_nb += count;
+ if (before->computation_amount)
+ xbt_free(before->computation_amount);
+ if (before->communication_amount)
+ xbt_free(before->communication_amount);
before->computation_amount = xbt_new0(double,
before->workstation_nb);
after->workstation_nb += count;
+ if (after->computation_amount)
+ xbt_free(after->computation_amount);
+ if (after->communication_amount)
+ xbt_free(after->communication_amount);
+
after->computation_amount = xbt_new0(double, after->workstation_nb);
after->communication_amount = xbt_new0(double,
after->workstation_nb*