Skip to content
Snippets Groups Projects
Commit ece5fa96 authored by Bouquillon Fabien's avatar Bouquillon Fabien
Browse files

bug résolu nouvelle fonction

parent ed3c9e9e
No related branches found
No related tags found
No related merge requests found
......@@ -11,7 +11,7 @@ ARMCC=arm-none-eabi-gcc
CXXFLAGS += -std=c++11 -O0 -g3 -I ../otawa-core2-build/otawa/include/ -I ../otawa-core2-build/elm/include/ -I ../include/
all: clean explo.so install application large_loop loop_cond
all: clean explo.so install application large_loop loop_cond large_loop_vuln
# binaire: binaire.c
# $(ARMCC) -nostdlib -nostdinc -static -o binaire binaire.c
......@@ -28,6 +28,10 @@ all: clean explo.so install application large_loop loop_cond
large_loop: large_loop.c
$(ARMCC) -nostdlib -nostdinc -static -o large_loop large_loop.c
large_loop_vuln: large_loop_vuln.c
$(ARMCC) -nostdlib -nostdinc -static -o large_loop_vuln large_loop_vuln.c
loop_cond: loop_cond.c
$(ARMCC) -nostdlib -nostdinc -static -o loop_cond loop_cond.c
......
......@@ -11,12 +11,15 @@ ARMCC=arm-none-eabi-gcc
CXXFLAGS += -std=c++11 -O0 -g -I ../otawa-core2-build/otawa/include/ -I ../otawa-core2-build/elm/include/
all: clean vulnerability.so install application large_loop binaire
all: clean vulnerability.so install application large_loop binaire tasks_sequential
large_loop: large_loop.c
$(ARMCC) -nostdlib -nostdinc -static -o large_loop large_loop.c
tasks_sequential: tasks_sequential.c
$(ARMCC) -nostdlib -nostdinc -static -o tasks_sequential tasks_sequential.c
binaire: binaire.c
$(ARMCC) -nostdlib -nostdinc -static -o binaire binaire.c
......
No preview for this file type
......@@ -34,7 +34,7 @@ int main(int argc, char **argv) {
FLOW_FACTS_PATH(conf) = argv[2];
// Platform description
CACHE_CONFIG_PATH(conf) = "xmc4500/cache.xml";
CACHE_CONFIG_PATH(conf) = "cache.xml";
PROCESSOR_PATH(conf) = "xmc4500/pipeline.xml";
ws = manager.load(argv[1], conf);
......
No preview for this file type
<?xml version="1.0" encoding="UTF-8"?>
<cache-config>
<icache>
<block_bits>8</block_bits>
<way_bits>4</way_bits>
<row_bits>6</row_bits>
<block_bits>5</block_bits>
<way_bits>1</way_bits>
<row_bits>8</row_bits>
<miss_penalty>70</miss_penalty>
</icache>
</cache-config>
......@@ -14,16 +14,32 @@
#include <otawa/proc/ProcessorPlugin.h>
#include <otawa/cfg/Dominance.h>
#include <otawa/otawa.h>
#include <otawa/hard/Cache.h>
#include <otawa/cache/LBlock.h>
#include "type.h"
namespace otawa { namespace vulnerability {
// bool explo_fct(Address cb,
// Block *b,
// std::vector<std::vector<Block*>> &paths,
// std::vector<std::vector<Block*>> paths_before,
// std::vector<std::vector<Block*>> &result,
// const hard::Cache* cache);
// void rec_loop(Address cb,
// Block *loop_header,
// Block *b,
// std::vector<std::vector<Block*>> &paths,
// std::vector<std::vector<Block*>> paths_before,
// std::vector<std::vector<Block*>> &result,
// const hard::Cache* cache);
void explo_path(std::vector<std::vector<Block*>>& result, std::vector<Block*> path, Block* b, Address cb, const hard::Cache * cache);
class VulnerabilityProcessor : public Processor {
public:
static p::declare reg;
explicit VulnerabilityProcessor(p::declare &r = reg);
void explo_fct(Block *b, std::vector<std::vector<Block*>> &paths, std::vector<std::vector<Block*>> paths_before);
void rec_loop(Block *loop_header,Block *b, std::vector<std::vector<Block*>> &paths, std::vector<std::vector<Block*>> paths_before);
protected:
void processWorkSpace(WorkSpace * /*ws*/) override;
void configure(const PropList &props) override;
......
This diff is collapsed.
No preview for this file type
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment