diff --git a/svn-current/trunk/makefile.libretro b/svn-current/trunk/makefile.libretro
index 3cff287..f619a20 100644
--- a/svn-current/trunk/makefile.libretro
+++ b/svn-current/trunk/makefile.libretro
@@ -334,6 +334,21 @@ else ifeq ($(platform), gcw0)
    CFLAGS += -ffast-math -march=mips32 -mtune=mips32r2 -mhard-float
    CXXFLAGS += -std=gnu++11 -ffast-math -march=mips32 -mtune=mips32r2 -mhard-float
 
+# Trimui
+else ifeq ($(platform), trimui)
+	TARGET := $(TARGET_NAME)_libretro.so
+	CC = $(CROSS_COMPILE)gcc
+	CXX = $(CROSS_COMPILE)g++
+	AR = $(CROSS_COMPILE)ar
+	SHARED := -shared -Wl,-no-undefined -Wl,--version-script=$(LIBRETRO_DIR)/link.T
+	LDFLAGS += -fno-PIC -flto
+	CFLAGS += -fomit-frame-pointer -ffast-math -mcpu=arm926ej-s -mtune=arm926ej-s -fno-PIC -flto
+	CXXFLAGS += -fomit-frame-pointer -ffast-math -mcpu=arm926ej-s -mtune=arm926ej-s -fno-PIC -flto -DUSE_CYCLONE
+	OPTIMIZE := -Ofast -DNDEBUG
+	ifeq (,$(DEBUG))
+		LDFLAGS += -s
+	endif
+
 # Windows MSVC 2003 Xbox 1
 else ifeq ($(platform), xbox1_msvc2003)
 TARGET := $(TARGET_NAME)_libretro_xdk1.lib
@@ -700,11 +715,21 @@ endif
 ifeq ($(DEBUG), 1)
    CFLAGS += -O0 -g
    CXXFLAGS += -O0 -g
+else ifneq (,$(OPTIMIZE))
+	CFLAGS += $(OPTIMIZE)
+	CXXFLAGS += $(OPTIMIZE)
 else
    CFLAGS += -O2 -DNDEBUG
    CXXFLAGS += -O2 -DNDEBUG
 endif
 
+ifeq ($(PROFILE), GENERATE)
+	CFLAGS	+= -fprofile-generate=./profile/fbalpha2012
+	LDFLAGS	+= -lgcov
+else ifeq ($(PROFILE), APPLY)
+	CFLAGS	+= -fprofile-use -fprofile-dir=../profile/fbalpha2012 -fbranch-probabilities
+endif
+
 ifeq ($(platform), sncps3)
    WARNINGS_DEFINES =
 else ifneq (,$(findstring msvc,$(platform)))
